GithubHelp home page GithubHelp logo

plyrue's People

Contributors

dependabot[bot] avatar hrvojevu avatar mirodojkic avatar zcuric avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

plyrue's Issues

Add Typescript definitions

Is your feature request related to a problem? Please describe.
Right now, no TypeScript definitions are provided and therefore, Plyrue does not support typing.

Describe the solution you'd like
Add Typescript definitions to the project.

Webpack build throws mising dependency error

Describe the bug
When building an app using Webpack 4.35.0 to build an app using Vue 2.6.10 and Plyrue 2.0.4, Webpack throws a Module not found error:

ERROR in ./node_modules/plyrue/dist/plyrue.js
Module not found: Error: Can't resolve 'vue-runtime-helpers/dist/normalize-component.js' in '/Users/julien/projects/ideation6/front/node_modules/plyrue/dist'
 @ ./node_modules/plyrue/dist/plyrue.js 5:40-98
 @ ./src/main.js

To Reproduce

  1. Create a basic Vue project with a App.vue component
  2. Add Plyrue as a dependency: npm i plyrue
  3. Register Plyrue as a plugin in Vue, using the instructions in the doc:
import App from './App.vue';
import Plyrue from 'plyrue';
import Vue from 'vue';

Vue.use(Plyrue);

new Vue({
  render: h => h(App),
}).$mount('#app');
  1. Build the app using Webpack: npx webpack --progress
  2. The Webpack build fails and outputs the error message

Expected behavior
The Webpack build completes successfully.

Desktop:

  • OS: MacOS 10.14.5
  • Browser: Firefox
  • Version: 68.0.1
  • Node 12.4.0
  • NPM 6.9.0

Additional context
The issue also appears when running the Webpack dev server.

"this.media is null" on @timeupdate event

Describe the bug

// player.vue
<template>
  plyrue(
    id="player"
    type="video"
    ref="plyrue"
    :poster="data.thumbnail"
    :src="data.stream_url"
    :emit="['loadedmetadata', 'timeupdate', 'playing', 'pause', 'ended']"
    :options="options"
    @loadedmetadata="setMetadata()"
    @playing="setStatus('playing')"
    @pause="setStatus('pause')"
    @ended="setStatus('ended')"
    @timeupdate="setCurrentTime(player.currentTime)"
    crossorigin
    autoplay
  )
...

To Reproduce
Steps to reproduce the behavior:

  1. Pick a video from overview
  2. Video plays and @timeupdate works
  3. Go back to history (history.back())
  4. Pick a video from overview
  5. Video plays, but @timeupdate throws this.media is null and doesn't work anymore

Expected behavior
Is the event being cleared correctly?

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: Linux
  • Browser: Firefox Developer Edition
  • Version: 70

Additional context
Using vue-router, Laravel 6 with latest packages.

SSR

I managed to make it work with SSR just using the basic main.js -> plugin and editing nuxt.config.js to include the plugin. (+css)

the problem I have is it works on yarn dev, but not on production server and can't pinpoint why, I also noticed, even without it working on production, it only works on iOS, not chrome

Custom controls?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

At the moment I've simple disabled the Plyr controls and using a component with a z-index hack on top of the video instance.

Describe the solution you'd like
A clear and concise description of what you want to happen.

It would be great if one could inject a Vue component as customization would be a lot easier.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Current workaround works fine. I'm using a bus to handle events and the 'Controls' component simple sends them back to the player.

Additional context
Add any other context or screenshots about the feature request here.

Custom controls are possible, but I don't believe with Vue components. Please correct me when I'm wrong and if possible show me how it's done. :)

Thanks for your work!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.