nuxt-musicfyplayer 2.1.5 → 2.1.7
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.
- package/README.md +1 -0
- package/dist/module.json +2 -2
- package/dist/runtime/assets/css/musicfyplayer.css +1 -1
- package/dist/runtime/components/MusicfyPlayer.vue +3 -14
- package/dist/runtime/utils/average-color.js +3 -13
- package/dist/runtime/utils/mediaelement.d.ts +1 -1
- package/dist/runtime/utils/mediaelement.js +1 -1
- package/package.json +13 -13
package/README.md
CHANGED
@@ -146,6 +146,7 @@ Check out the [🏀 Online playground](https://stackblitz.com/github/yizack/nuxt
|
|
146
146
|
|
147
147
|
## Credits
|
148
148
|
|
149
|
+
- Built based on [embeddable-music-player](https://github.com/Yizack/embeddable-music-player)
|
149
150
|
- Detect average color with [fast-average-color](https://github.com/fast-average-color/fast-average-color)
|
150
151
|
- Music player controls by [MediaElement.js](https://www.mediaelementjs.com/)
|
151
152
|
- [Nuxt](https://github.com/nuxt/nuxt), the JavaScript framework for creating SSR Vue applications and its [Module Author Guide](https://nuxt.com/docs/guide/going-further/modules)
|
package/dist/module.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
@import "mediaelement/build/mediaelementplayer.min.css";.mejs__container,.mejs__controls:not([style*="display: none"]){background:transparent}.mejs__container{min-width:100%!important;width:100%!important}.mejs__controls{display:flex;flex-direction:column;padding:0}.mejs__button{width:100%}.mejs__button>button{overflow:visible}.mejs__button,.mejs__time,.mejs__time-rail{height:0}.mejs__time-rail{margin:0;padding:0;width:100%}.mejs__time{display:flex;height:2rem;justify-content:space-between;padding:0}.mejs__pause button,.mejs__play button,.mejs__replay button{margin:0;top:-.5rem}.mejs__currenttime,.mejs__duration{align-self:flex-end}.mejs__play button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23fff' viewBox='4 3.5 16 16'%3E%3Cpath d='m11.596 8.697-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393'/%3E%3C/svg%3E")}.mejs__pause button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23fff' viewBox='4 3.5 16 16'%3E%3Cpath d='M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5m5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5'/%3E%3C/svg%3E")}.mejs__replay button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23fff' viewBox='30 20 512 512'%3E%3Cpath d='M386.3 160H336c-17.7 0-32 14.3-32 32s14.3 32 32 32h128c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32s-32 14.3-32 32v51.2l-17.6-17.6c-87.5-87.5-229.3-87.5-316.8 0s-87.5 229.3 0 316.8 229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3 163.8-62.5 226.3 0z'/%3E%3C/svg%3E")}.mejs__volume-button button{margin:0;right:3.5rem;top:-3.05rem}.mejs__volume-button.mejs__mute button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff' viewBox='1 1.5 13 13'%3E%3Cpath d='M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z'/%3E%3Cpath d='M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z'/%3E%3Cpath d='M8.707 11.182A4.49 4.49 0 0 0 10.025 8a4.49 4.49 0 0 0-1.318-3.182L8 5.525A3.5 3.5 0 0 1 9.025 8 3.5 3.5 0 0 1 8 10.475zM6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06'/%3E%3C/svg%3E")}.mejs__volume-button.mejs__unmute button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff' viewBox='1 1.5 13 13'%3E%3Cpath d='M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06m7.137 2.096a.5.5 0 0 1 0 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E")}.mejs__horizontal-volume-slider{height:0;width:100%}.mejs__horizontal-volume-total{background:hsla(0,0%,100%,.3);cursor:pointer;left:unset;right:0;top:-2.75rem}.mejs__pause svg.mejs__icon-pause,.mejs__play svg.mejs__icon-play,.mejs__replay svg.mejs__icon-replay{display:none}.musicfyplayer{border-radius:.5rem;overflow:hidden;text-align:center}@media (width <= 385px){.musicfyplayer{height:unset!important}}.musicfyplayer.musicfyplayer-color{background-color:#020420}.musicfyplayer .mp__box{background:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.8));display:flex;flex-direction:column;height:100%;position:relative}.musicfyplayer .mp__controls{color:#fff;padding:1.5rem 1rem}.musicfyplayer .mp__music{width:100%}.musicfyplayer .mp__cover{background-color:rgba(0,0,0,.4);flex:1 1 0%}.musicfyplayer .mp__box-1,.musicfyplayer .mp__cover{height:100%;overflow-y:hidden}.musicfyplayer .mp__box-2{box-sizing:border-box;height:100%;padding:.5rem;position:relative;width:100%}.musicfyplayer .mp__box-3{height:100%;min-width:80px;position:relative;width:100%}.musicfyplayer .mp__image{background-position:top;background-repeat:no-repeat;background-size:contain;display:inline;max-height:100%;max-width:100%;position:relative}
|
1
|
+
@import "mediaelement/build/mediaelementplayer.min.css";.mejs__container,.mejs__controls:not([style*="display: none"]){background:transparent}.mejs__container{min-width:100%!important;width:100%!important}.mejs__container:focus{outline-width:0}.mejs__controls{display:flex;flex-direction:column;padding:0}.mejs__button{width:100%}.mejs__button>button{overflow:visible}.mejs__button,.mejs__time,.mejs__time-rail{height:0}.mejs__time-rail{margin:0;padding:0;width:100%}.mejs__time{display:flex;height:2rem;justify-content:space-between;padding:0}.mejs__pause button,.mejs__play button,.mejs__replay button{margin:0;top:-.5rem}.mejs__currenttime,.mejs__duration{align-self:flex-end}.mejs__play button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23fff' viewBox='4 3.5 16 16'%3E%3Cpath d='m11.596 8.697-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393'/%3E%3C/svg%3E")}.mejs__pause button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23fff' viewBox='4 3.5 16 16'%3E%3Cpath d='M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5m5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5'/%3E%3C/svg%3E")}.mejs__replay button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23fff' viewBox='30 20 512 512'%3E%3Cpath d='M386.3 160H336c-17.7 0-32 14.3-32 32s14.3 32 32 32h128c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32s-32 14.3-32 32v51.2l-17.6-17.6c-87.5-87.5-229.3-87.5-316.8 0s-87.5 229.3 0 316.8 229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3 163.8-62.5 226.3 0z'/%3E%3C/svg%3E")}.mejs__volume-button button{margin:0;right:3.5rem;top:-3.05rem}.mejs__volume-button.mejs__mute button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff' viewBox='1 1.5 13 13'%3E%3Cpath d='M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z'/%3E%3Cpath d='M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z'/%3E%3Cpath d='M8.707 11.182A4.49 4.49 0 0 0 10.025 8a4.49 4.49 0 0 0-1.318-3.182L8 5.525A3.5 3.5 0 0 1 9.025 8 3.5 3.5 0 0 1 8 10.475zM6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06'/%3E%3C/svg%3E")}.mejs__volume-button.mejs__unmute button:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff' viewBox='1 1.5 13 13'%3E%3Cpath d='M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06m7.137 2.096a.5.5 0 0 1 0 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E")}.mejs__horizontal-volume-slider{height:0;width:100%}.mejs__horizontal-volume-total{background:hsla(0,0%,100%,.3);cursor:pointer;left:unset;right:0;top:-2.75rem}.mejs__pause svg.mejs__icon-pause,.mejs__play svg.mejs__icon-play,.mejs__replay svg.mejs__icon-replay{display:none}.musicfyplayer{border-radius:.5rem;overflow:hidden;text-align:center}@media (width <= 385px){.musicfyplayer{height:unset!important}}.musicfyplayer.musicfyplayer-color{background-color:#020420}.musicfyplayer .mp__box{background:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.8));display:flex;flex-direction:column;height:100%;position:relative}.musicfyplayer .mp__controls{color:#fff;padding:1.5rem 1rem}.musicfyplayer .mp__music{width:100%}.musicfyplayer .mp__cover{background-color:rgba(0,0,0,.4);flex:1 1 0%}.musicfyplayer .mp__box-1,.musicfyplayer .mp__cover{height:100%;overflow-y:hidden}.musicfyplayer .mp__box-2{box-sizing:border-box;height:100%;padding:.5rem;position:relative;width:100%}.musicfyplayer .mp__box-3{height:100%;min-width:80px;position:relative;width:100%}.musicfyplayer .mp__image{background-position:top;background-repeat:no-repeat;background-size:contain;display:inline;max-height:100%;max-width:100%;position:relative}
|
@@ -2,20 +2,9 @@
|
|
2
2
|
import { getImageAverageColor } from "./../utils/average-color";
|
3
3
|
import { onMounted, ref, useTemplateRef } from "#imports";
|
4
4
|
const props = defineProps({
|
5
|
-
config: {
|
6
|
-
|
7
|
-
|
8
|
-
},
|
9
|
-
width: {
|
10
|
-
type: String,
|
11
|
-
required: false,
|
12
|
-
default: "100%"
|
13
|
-
},
|
14
|
-
height: {
|
15
|
-
type: String,
|
16
|
-
required: false,
|
17
|
-
default: "450px"
|
18
|
-
}
|
5
|
+
config: { type: Object, required: true },
|
6
|
+
width: { type: String, required: false, default: "100%" },
|
7
|
+
height: { type: String, required: false, default: "450px" }
|
19
8
|
});
|
20
9
|
const audio = useTemplateRef("audio");
|
21
10
|
const size = ref({ width: props.width, height: props.height });
|
@@ -1,16 +1,6 @@
|
|
1
1
|
import { FastAverageColor } from "fast-average-color";
|
2
2
|
const fac = new FastAverageColor();
|
3
|
-
export const getImageAverageColor = (src) => {
|
4
|
-
|
5
|
-
|
6
|
-
img.crossOrigin = "Anonymous";
|
7
|
-
img.src = src;
|
8
|
-
img.onload = () => {
|
9
|
-
const color = fac.getColor(img);
|
10
|
-
resolve(color.rgb);
|
11
|
-
};
|
12
|
-
img.onerror = () => {
|
13
|
-
reject(new Error(`Failed to load image: ${src}`));
|
14
|
-
};
|
15
|
-
});
|
3
|
+
export const getImageAverageColor = async (src) => {
|
4
|
+
const color = await fac.getColorAsync(src);
|
5
|
+
return color.rgb;
|
16
6
|
};
|
@@ -1,3 +1,3 @@
|
|
1
|
-
import 'mediaelement/build/mediaelement-and-player.js';
|
1
|
+
import 'mediaelement/build/mediaelement-and-player.min.js';
|
2
2
|
import type { MediaElementPlayerOptions } from '../types/mediaelement.js';
|
3
3
|
export declare const mediaElementPlayer: (element: HTMLAudioElement, options: MediaElementPlayerOptions) => void;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "nuxt-musicfyplayer",
|
3
|
-
"version": "2.1.
|
3
|
+
"version": "2.1.7",
|
4
4
|
"description": "Embed a simple and beautiful HTML music player from local or hosted audio on your website using MediaElement.js and fast-average-color",
|
5
5
|
"keywords": [
|
6
6
|
"nuxt",
|
@@ -43,22 +43,22 @@
|
|
43
43
|
"test:watch": "vitest watch"
|
44
44
|
},
|
45
45
|
"dependencies": {
|
46
|
-
"@nuxt/kit": "^3.
|
46
|
+
"@nuxt/kit": "^3.17.3",
|
47
47
|
"fast-average-color": "^9.5.0",
|
48
48
|
"mediaelement": "^7.0.7"
|
49
49
|
},
|
50
50
|
"devDependencies": {
|
51
|
-
"@nuxt/devtools": "^2.
|
52
|
-
"@nuxt/eslint-config": "^1.
|
53
|
-
"@nuxt/module-builder": "^1.0.
|
54
|
-
"@nuxt/schema": "^3.
|
55
|
-
"@nuxt/test-utils": "^3.
|
56
|
-
"@types/node": "^22.
|
51
|
+
"@nuxt/devtools": "^2.4.1",
|
52
|
+
"@nuxt/eslint-config": "^1.4.0",
|
53
|
+
"@nuxt/module-builder": "^1.0.1",
|
54
|
+
"@nuxt/schema": "^3.17.3",
|
55
|
+
"@nuxt/test-utils": "^3.19.0",
|
56
|
+
"@types/node": "^22.15.18",
|
57
57
|
"changelogen": "^0.6.1",
|
58
|
-
"eslint": "^9.
|
59
|
-
"nuxt": "^3.
|
60
|
-
"vitest": "^3.1.
|
61
|
-
"vue-tsc": "^2.2.
|
58
|
+
"eslint": "^9.27.0",
|
59
|
+
"nuxt": "^3.17.3",
|
60
|
+
"vitest": "^3.1.3",
|
61
|
+
"vue-tsc": "^2.2.10"
|
62
62
|
},
|
63
|
-
"packageManager": "pnpm@10.
|
63
|
+
"packageManager": "pnpm@10.11.0"
|
64
64
|
}
|