PageSourceSearch

https://taide.art/static/Player-C4uGtTeB.js

js taide.art collected 2026-09-25 08:41:09 UTC 3,696 bytes, 1 lines download raw bytes

1import{a4 as g,_ as d}from"./index-B2RcSseM.js";import{W as w}from"./media-Cf7BDRS-.js";import{D as S}from"./DurationMixin-KR31SxTt.js";import{a0 as l,ae as _,ac as b,x as o,v as a,y as h,$ as c,ad as f,a3 as r,a2 as A}from"./vue-BFiGH6Pw.js";import{a as P}from"./maps-CaxwoKp9.js";import"./photoswipe-DBz4ixLY.js";const k={key:0,class:"audio-player"},T={key:0,class:"multimedia-title podcast-title"},W={class:"podcast-title-icon"},I={key:0,class:"duration"},B={class:"title"},U={key:1,class:"failure"};function $(e,i,s,t,O,n){const m=l("icon-headphones"),y=l("icon-flash-outline"),p=l("errors-message"),v=_("observe-visibility");return s.item?b((o(),a("div",k,[s.title?(o(),a("div",T,[h("div",W,[c(m,{title:e.$t("audios.listenPodcast")},null,8,["title"]),e.durationString?(o(),a("div",I,f(e.durationString),1)):r("",!0)]),h("h2",B,f(s.item.Name),1)])):r("",!0),h("div",{class:"audio-waveform",ref:"audioRef",onDblclick:i[0]||(i[0]=(...u)=>n.onTogglePlay&&n.onTogglePlay(...u)),"on:doubleTap":i[1]||(i[1]=(...u)=>n.onTogglePlay&&n.onTogglePlay(...u))},null,544),e.error?(o(),a("div",U,[c(y,{title:""}),e.error?(o(),A(p,{key:0,error:e.error},null,8,["error"])):r("",!0)])):r("",!0)])),[[v,e.observeVisibilityOptions]]):r("",!0)}const E={name:"audio-player",props:{item:{type:Object,required:!0},title:{type:Boolean},autoplay:{type:Boolean}},mixins:[S,g],computed:{player:function(){var e;return((e=this.item)==null?void 0:e.AudioPlayer)||{}}},data:function(){return{source:null,info:null,waveSurfer:null,waveSurferOptions:{backend:"MediaElement",mediaControls:!0,waveColor:"#77a7d1",progressColor:"#337ab7"},playing:!1,intersectionRemainsVisible:!0,ready:!1,error:null}},mounted:function(){this.initAudio()},beforeUnmount:function(){this.waveSurfer&&this.waveSurfer.destroy()},watch:{item:function(){this.initAudio()}},methods:{initAudio:function(){if(!process.client||!this.item||!this.isIntersectionVisible)return;const e=this.player.AudioInfo||this.item.AudioInfo;if(!e){console.warn("AudioInfo not found");return}const i=e.EncodedAudios&&e.EncodedAudios.length&&d.head(e.EncodedAudios);if(i&&i.Url)this.source=i.Url;else if(this.item.Id)this.source=this.$helpers.getBaseUrl()+`/svc/audios/${this.item.Id}`;else if(e.OriginalAudioUrl){const s=this.$helpers.getBaseUrl()||"",t=e.OriginalAudioUrl;this.source=t.match(/^https?:\/\//i)?t:`${s}${t.startsWith("/")?t:`/${t}`}`}else{console.warn("Audio source not found"),this.error=new Error("Audio source not found");return}this.info=e,this.onResize()},initPlayer:function(){if(this.waveSurfer)try{this.waveSurfer.destroy()}catch{}if(this.isTestEnv)return;const e=d.extend({container:this.$refs.audioRef},this.waveSurferOptions);this.waveSurfer=w.create(e),this.waveSurfer.on("ready",()=>{this.autoplay&&this.onPlay()}),this.waveSurfer.on("finish",()=>{this.playing=!1,this.waveSurfer&&this.waveSurfer.seekTo(0)}),this.waveSurfer.load(this.source)},getCardRoute:function(e){return null},setWidthHeight:function(){this.width?this.myWidth=this.width:process.client&&window.innerWidth<800?this.myWidth=window.innerWidth-90:this.myWidth=800,this.height?this.myHeight=this.height:this.myHeight=.75*this.myWidth},onResize:function(){this.setWidthHeight(),this.ready=!1,this.$nextTick(()=>{this.ready=!0,this.$nextTick(()=>{setTimeout(this.initPlayer,250)})})},onPlay:function(){this.waveSurfer&&this.waveSurfer.play(),this.playing=!0},onPause:function(){this.waveSurfer&&this.waveSurfer.pause(),this.playing=!1},onTogglePlay:function(){this.playing?this.onPause():this.onPlay()},onIntersectShow:function(){this.initAudio()},onIntersectHide:function(){if(this.waveSurfer)try{this.waveSurfer.destroy()}catch{}}}},x=P(E,[["render",$]]);export{x as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.