@aidenlx/player
Version:
Headless web components that make integrating media on the a web a breeze.
43 lines (39 loc) • 1.38 kB
JavaScript
import{a as r}from"./chunk.R7LWQQGW.js";import{b as o}from"./chunk.DZBVSYZM.js";import{b as i,ia as s,q as t,z as e}from"./chunk.PWTX2M5C.js";var a=s`
:host {
display: inline;
contain: content;
}
:host([hidden]) {
display: none;
}
audio {
display: inline;
border-radius: inherit;
vertical-align: middle;
outline: 0;
border: 0;
user-select: none;
-webkit-user-select: none;
}
audio:not([width]) {
width: 100%;
}
`;var d=class extends r{static get styles(){return[a]}render(){return this.Ei()}Ei(){return i`
<audio
part=${this.Qs()}
src="${t(this.bi()?this.src:"")}"
width="${e(this.width)}"
height="${e(this.height)}"
preload="${t(this.preload)}"
crossorigin="${t(this.crossOrigin)}"
controlslist="${t(this.controlsList)}"
?playsinline="${this.playsinline}"
?controls="${this.controls}"
?disableremoteplayback="${this.disableRemotePlayback}"
.defaultMuted="${this.defaultMuted??this.muted}"
.defaultPlaybackRate="${this.defaultPlaybackRate??1}"
${o(this.Ze)}
>
${this.vi()}
</audio>
`}Qs(){return"media audio"}bi(){return this.canLoad}async handleMediaCanLoad(){await super.handleMediaCanLoad(),this.bi()&&(this.requestUpdate(),await this.updateComplete,this.load())}};export{d as a};