Compare commits

..

1005 Commits

Author SHA1 Message Date
Sam Potts
d76ef3ff91 Small UI tweaks and fix for instanceof issue 2018-01-31 19:33:00 +11:00
Sam Potts
2691c7c9d6 Version bump + icon fix 2018-01-30 13:01:05 +11:00
Sam Potts
26b1d8ce8f Fix UMD stuff 2018-01-30 12:57:19 +11:00
Sam Potts
6fae148fc1 Deploy 2018-01-30 09:26:09 +11:00
Sam Potts
bb51647fe2 Merge pull request #772 from sampotts/fix/ads-blocked
Fix: ads blocked and media playing before ad plays
2018-01-30 09:22:54 +11:00
Sam Potts
71efbe7a92 Merge branch 'beta' into fix/ads-blocked
# Conflicts:
#	dist/plyr.js
#	dist/plyr.js.map
#	src/js/plugins/ads.js
#	src/js/plyr.js
2018-01-30 09:22:14 +11:00
ferdiemmen
afd695cb39 Fix typo's 2018-01-29 22:45:46 +01:00
ferdiemmen
c4eb4c97ac fix(ads): Fixes media from playing when ads are blocked 2018-01-29 22:40:08 +01:00
Sam Potts
8f7a8940f3 Version bump 2018-01-25 22:42:52 +11:00
Sam Potts
5e68f8c8dd Attempt to fix YouTube message error, added ads references, changes to bool 2018-01-25 22:41:30 +11:00
Sam Potts
b4e22e2e7b Restored “Ad” in label 2018-01-24 09:06:20 +11:00
Sam Potts
d4234da9aa Docs tweak 2018-01-23 19:13:35 +11:00
Sam Potts
1f53b27d4e Version bump 2018-01-23 18:00:08 +11:00
Sam Potts
cc128e6088 Renamed property, UI tweak 2018-01-23 10:31:21 +11:00
ferdiemmen
3c8acb4e9e Fix bug where ad would play on every play action 2018-01-22 21:07:08 +01:00
Sam Potts
ebf53d14b1 Small tweaks 2018-01-22 23:39:09 +11:00
Sam Potts
b298587c0b Bug fix 2018-01-22 23:20:03 +11:00
Sam Potts
26e9aaceb8 Version bump 2018-01-22 23:17:40 +11:00
Sam Potts
384f3d6eda Gulp 2018-01-22 23:16:50 +11:00
Sam Potts
3aa5747c90 Merge pull request #760 from sampotts/beta-with-ads
Beta with ads
2018-01-22 23:15:52 +11:00
Sam Potts
5671235fd9 Formatting, events and ad countdown added 2018-01-22 23:15:10 +11:00
Sam Potts
1dd5c9efd9 Converted demo to iife 2018-01-20 15:23:36 +11:00
Sam Potts
5fad152cbf Formatting and “ad” badge 2018-01-19 20:24:15 +11:00
Sam Potts
f33ca846f2 Build 2018-01-19 14:30:28 +11:00
Sam Potts
986c802acd Merge branch 'beta-with-ads' of github.com:sampotts/plyr into beta-with-ads
# Conflicts:
#	src/js/plugins/ads.js
2018-01-19 14:30:11 +11:00
Sam Potts
98dd818bf6 Merge branch 'beta' into beta-with-ads
# Conflicts:
#	demo/dist/demo.js
#	demo/dist/demo.js.map
#	dist/plyr.js
#	dist/plyr.js.map
2018-01-19 14:28:39 +11:00
Sam Potts
021f6c8460 Comments and formatting 2018-01-19 14:26:25 +11:00
Sam Potts
392f837398 Merge pull request #763 from gehaktmolen/beta-with-ads-adjustments
Beta with ads - Reloading ads on new video
2018-01-19 14:26:08 +11:00
Sam Potts
6831c30534 Transition event fix 2018-01-19 14:22:26 +11:00
Arthur Hulsman
ed6048034b Noticed that Plyr stopped working when ads are blocked. 2018-01-18 14:04:47 +01:00
Arthur Hulsman
8af312fe3c Updated pause and resume content methods within Ads class. 2018-01-18 12:31:10 +01:00
Arthur Hulsman
d87ada4f58 Reformatted ads codebase and added/ changed comments. Also removed un-used events. 2018-01-18 12:26:53 +01:00
Arthur Hulsman
31c8166562 Fixed string literal and position issue of the midroll cue inside the time line. Added a check for the progress element existence. 2018-01-17 15:57:10 +01:00
Arthur Hulsman
0cb2f95888 Removed an un-used variable. 2018-01-17 15:43:08 +01:00
Arthur Hulsman
896ea7c689 Added cue markings within the time line for when midrolls will be displayed. Removed unusued callback parameter. 2018-01-17 15:38:26 +01:00
Arthur Hulsman
1d1eb02bd7 Added the logging of our main promises to their resolving callback. Otherwise they come up as null. 2018-01-17 14:44:44 +01:00
Arthur Hulsman
3583165b30 Removed logic related to starting the ad by clicking/ tapping the advertisement container. Ad is started by plyr play method. 2018-01-17 14:09:11 +01:00
Arthur Hulsman
d822f0c6bf Adsmanager is now re/pre-loaded with new ads when the video is done or an ad error appears. Will make it possible to request ads when a new video is loaded. Added comments and missing events within the adsmanagerloader method. 2018-01-17 13:58:39 +01:00
Arthur Hulsman
9e52296dc6 Moved the ads container to be outside of the video wrapper. This way we can easily move the ad in front or behind the video controls based on content resume or pause IMA events. 2018-01-17 12:19:32 +01:00
Arthur Hulsman
12a7a4142c Moved the logic for pausing and playing the video to content pause/ resume IMA events to avoid flickering. Also used events for resolving the adsmanager and adsloader promises. 2018-01-17 11:32:13 +01:00
ferdiemmen
8348f79742 Fix loading/playing of the ads when there is no valid ads.tagUrl 2018-01-17 08:31:36 +01:00
ferdiemmen
ec73d34bd3 Some tweaks 2018-01-16 23:06:40 +01:00
ferdiemmen
1cef48d4f8 fix blocking play() if ads are set 2018-01-15 23:30:54 +01:00
Ferdi
c24c05226d Merge pull request #761 from gehaktmolen/beta-with-ads-promises
Beta with ads - Added promises, missing events, new ad tag and additional logging.
2018-01-15 20:13:51 +01:00
Arthur Hulsman
4b0005c28e Added promises, missing events, new ad tag and additional logging. 2018-01-15 14:47:34 +01:00
Sam Potts
8064405dbc Tweaks 2018-01-14 23:33:18 +11:00
Sam Potts
22e8892993 Code tweaks 2018-01-14 23:15:33 +11:00
Sam Potts
cfc86bcb7c Merge branch 'beta' into beta-with-ads
# Conflicts:
#	demo/dist/demo.js
#	demo/dist/demo.js.map
#	dist/plyr.js
#	dist/plyr.js.map
2018-01-14 22:55:44 +11:00
Sam Potts
5f96ec6ac2 Minor logic tweak 2018-01-14 22:54:03 +11:00
ferdiemmen
bbdf225d7b Fix loading google ima sdk 2018-01-14 08:21:35 +01:00
ferdiemmen
025fc1090b Implementing ads plugin 2018-01-13 23:02:59 +01:00
Sam Potts
d9ec1d1b8e Progressively enhance <iframe> embeds 2018-01-12 19:35:46 +11:00
Sam Potts
2e5d06ad85 Publish script tweaks 2018-01-09 20:43:58 +11:00
Sam Potts
bacd049eb0 Package 2018-01-09 20:26:56 +11:00
Sam Potts
6fd7b26bb2 Beta version up on https://plyr.io/beta and CDN 2018-01-09 20:25:46 +11:00
Sam Potts
1df79cf7f8 Publishing to /beta 2018-01-09 19:35:17 +11:00
Sam Potts
e6badacf0d Recommended extensions for VS Code 2018-01-09 18:52:36 +11:00
Sam Potts
a0d9d5eca8 Styling tweaks 2018-01-09 09:14:59 +11:00
Sam Potts
8786377a75 Use CSS custom property for webkit range fill 2018-01-08 20:53:18 +11:00
Sam Potts
f0322e8d94 Merge branch 'develop' of github.com:sampotts/plyr into develop 2018-01-08 19:42:29 +11:00
Sam Potts
3f2ac3fca0 Package tweaks 2018-01-08 19:42:21 +11:00
Sam Potts
9872207e87 Merge pull request #752 from friday/gulp-fix
Enable gulp builds when aws.json isn't present.
2018-01-08 12:12:11 +11:00
Albin Larsson
58d942e737 Fix gulp build for user who doesn't have aws.json 2018-01-08 02:01:39 +01:00
Sam Potts
dd190155c4 Empty storage fix 2018-01-07 23:16:55 +11:00
Sam Potts
ebb3b83b27 Merge branch 'master' into develop
# Conflicts:
#	src/js/plyr.js
2018-01-07 22:46:28 +11:00
Sam Potts
79a43120ae Merge pull request #740 from gurinderhans/master
double click player to toggle fullscreen
2018-01-07 22:40:20 +11:00
Sam Potts
2b36ab7ef5 Merge branch 'master' into develop
# Conflicts:
#	.vscode/settings.json
#	demo/dist/demo.css
#	demo/dist/demo.js
#	demo/error.html
#	demo/index.html
#	demo/src/js/main.js
#	demo/src/less/lib/fontface.less
#	dist/plyr.css
#	dist/plyr.js
#	gulpfile.js
#	package-lock.json
#	package.json
#	readme.md
#	src/js/plyr.js
#	src/less/plyr.less
#	src/scss/plyr.scss
2018-01-07 22:39:28 +11:00
Sam Potts
eb38e0394d Slider styling 2018-01-07 22:35:52 +11:00
Sam Potts
b79ffacd9c Merge pull request #726 from xDae/master
Added react port
2018-01-05 21:23:45 +11:00
Sam Potts
e14e2cfaff Merge branch 'develop' of https://github.com/Selz/plyr into develop 2018-01-05 10:37:38 +11:00
Sam Potts
04119b27e6 Tweaks 2018-01-05 10:37:34 +11:00
Sam
92cb9e22e2 Started on error handling 2018-01-04 13:43:56 +11:00
Sam Potts
888c6773d0 Merge pull request #743 from jwpage/patch-1
Fix `enabled` smartphone example in README
2018-01-03 11:45:33 +11:00
Johnson Page
cfd653f02a Fix enabled smartphone example in README 2018-01-03 09:55:14 +11:00
Sam
6b9106ddb1 Fix for promise issue on Chrome, loading fix 2017-12-27 21:40:35 +00:00
Gurinder Hans
838bd49a1d add comment about no fullscreen if player type is audio 2017-12-23 21:47:01 -08:00
Gurinder Hans
800e0dedfb add double click to make full screen support 2017-12-23 21:41:08 -08:00
Sam Potts
965fc0b2f5 Docs, restored loadSprite and supported static methods 2017-12-23 18:42:52 +00:00
Sam Potts
98ac98b4c2 Vimeo fix 2017-12-21 00:20:56 +00:00
Sam Potts
178b0d8020 Badge tweak 2017-12-21 00:06:59 +00:00
Sam Potts
3bd1c1ff56 Fix for scrubber 2017-12-20 22:06:26 +00:00
Sam Potts
7d4bf91a35 Small fixes 2017-12-20 21:45:06 +00:00
Sam Potts
ac3d1d1242 Docs 2017-12-20 21:10:43 +00:00
Sam Potts
742018a716 Fix SASS bundle 2017-12-20 21:08:44 +00:00
Sam Potts
a2ef691b4b Comment update 2017-12-20 20:49:41 +00:00
Sam Potts
9e0c406a4a Remove chaning ability and return promise for play() 2017-12-20 20:47:02 +00:00
Sam Potts
f3df7aba15 Split up settings file 2017-12-20 18:00:05 +00:00
Sam Potts
6bc3592381 Fix for rounding 2017-12-20 15:32:16 +00:00
Sam Potts
6864149989 Converted to SASS/SCSS 2017-12-20 15:14:05 +00:00
Sam Potts
aab53fa91f Minor tweaks 2017-12-18 16:57:23 +00:00
Sam Potts
423f67b4f4 Copy 2017-12-08 15:55:12 +00:00
Sam Potts
82f81f4f73 More Edge fixes and small UI bugs 2017-12-08 15:54:08 +00:00
Sam Potts
c8990bd379 IE & Edge fixes, Storage & Console classes 2017-12-08 10:05:38 +00:00
Jose Miguel Bejarano
e6cc4ba1f5 Added react port 2017-12-04 17:05:14 +02:00
Sam Potts
de54929bb7 Safari CSS fixes and variables setup 2017-11-25 22:54:04 +11:00
Sam Potts
fd77831303 Fix display for current language on change 2017-11-25 01:19:16 +11:00
Sam Potts
cda574e627 Map 2017-11-24 08:47:17 +11:00
Sam Potts
fda1977119 Fix for keyboard increase/decrease volume 2017-11-24 08:47:11 +11:00
Sam Potts
f7bf0961cf Fix overflow issue on small players with menu open 2017-11-23 22:32:07 +11:00
Sam Potts
61325bbad1 Vimeo captions fix 2017-11-23 20:50:07 +11:00
Sam Potts
921cefd212 Moved to provider + type to make it cleaner in future, fix for multiple players 2017-11-23 17:35:35 +11:00
Sam Potts
de6f0f1b77 Updated data attributes to data-plyr namespace. Speed menu fixes 2017-11-23 12:57:43 +11:00
Sam Potts
7382553a78 Work on touch controls 2017-11-22 00:04:11 +11:00
Sam Potts
4b82e89845 Fix for playing getter as currentTime check is flaky 2017-11-21 21:14:44 +11:00
Sam Potts
d3b31e595a Handle no audio, more docs in code, fix for playing getter 2017-11-21 20:14:57 +11:00
Sam Potts
f33bc5a5c6 Minor tweaks 2017-11-21 14:05:55 +11:00
Sam Potts
f518ec108b Vimeo autopause option 2017-11-21 13:33:51 +11:00
Sam Potts
edfc6cd475 Play button as toggle button, tooltip changes, docs updated, fullscreen fix 2017-11-21 13:12:36 +11:00
Sam Potts
92cd67effb Docs to build custom CSS for plyr 2017-11-20 23:53:54 +11:00
Sam Potts
da1e987444 WIP on docs example 2017-11-20 21:23:49 +11:00
Sam Potts
2d4a166218 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	dist/plyr.js.map
2017-11-20 10:48:53 +11:00
Sam Potts
feae00224e Added ended and playing getters 2017-11-20 10:48:28 +11:00
Sam Potts
000afdd300 Merge branch 'develop' of github.com:Selz/plyr into develop 2017-11-19 23:35:23 +11:00
Sam Potts
0dc9681ae8 YouTube title 2017-11-19 23:35:07 +11:00
Sam Potts
dc391c98c6 UI tweaks 2017-11-19 21:15:24 +11:00
Sam Potts
4b62a5c74d Captions fix 2017-11-19 17:54:38 +11:00
Sam Potts
3f744ef63a Formatting 2017-11-18 19:36:36 +11:00
Sam Potts
5a244b7fed Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	dist/plyr.js.map
#	src/js/controls.js
2017-11-18 19:33:01 +11:00
Sam Potts
4dca4bf93c Minor fixes 2017-11-18 19:31:45 +11:00
Sam Potts
6984d6fb16 Controls cleanup, work on captions bug, click to invert time 2017-11-18 19:30:26 +11:00
Sam Potts
d7a1c44281 Using fetch instead of xhr, grabbing title for YouTube 2017-11-16 11:38:06 +01:00
Sam Potts
c64b8f6940 Started on error handling, Safari icon fix 2017-11-14 17:27:40 +01:00
Sam Potts
9c4b53d761 Fix for YouTube .getVideoData() issue (fixes #709) 2017-11-14 13:28:52 +01:00
Sam Potts
022b436c3f YouTube fix 2017-11-14 13:22:23 +01:00
Sam Potts
6058bb0245 Docs 2017-11-12 08:16:47 +00:00
Sam Potts
3ade86537d Docs, keyboard shortcut fixes 2017-11-12 08:14:14 +00:00
Sam Potts
d80be3b903 More docs, event renamed 2017-11-12 07:45:52 +00:00
Sam Potts
1a26681d87 Added Sparkk TV to the list of users 2017-11-10 00:19:44 +11:00
Sam Potts
9171297764 More docs 2017-11-10 00:06:46 +11:00
Sam Potts
ebd1a52e5d Config docs 2017-11-09 21:18:09 +11:00
Sam Potts
743c84188e Fix for destroy 2017-11-09 20:54:14 +11:00
Sam Potts
4879bea4a0 Moved console methods out of the root of the object 2017-11-09 20:01:13 +11:00
Sam Potts
66917fd39b Use callback for loading Vimeo API 2017-11-09 19:44:07 +11:00
Sam Potts
fd97607e55 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	dist/plyr.js.map
2017-11-09 19:41:12 +11:00
Sam Potts
f878581c8f UI bugs 2017-11-09 19:40:45 +11:00
Sam Potts
f9602acf61 Callback for loadScript 2017-11-09 16:06:49 +11:00
Sam Potts
86a5724bdb Missing code highlight 2017-11-09 00:22:40 +11:00
Sam Potts
63c963d726 More docs 2017-11-09 00:21:44 +11:00
Sam Potts
88bfa35b99 Test 2017-11-09 00:06:34 +11:00
Sam Potts
bb66be98da Volume fixes and other tidy up work 2017-11-08 23:46:20 +11:00
Sam Potts
c948e95ade Looping, increase/decrease volume fix 2017-11-08 00:37:14 +11:00
Sam Potts
1a5f4b1b9e Merge branch 'develop' of github.com:Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	dist/plyr.js.map
#	src/js/defaults.js
2017-11-07 23:23:17 +11:00
Sam Potts
3f41a0cf54 Merge branch 'develop' of github.com:Selz/plyr into develop
# Conflicts:
#	readme.md
2017-11-07 23:21:35 +11:00
Sam Potts
966ca1acc3 Trap focus fix 2017-11-07 18:01:24 +11:00
Sam Potts
e2c7491ccd Using the “href” attribute on SVG if supported, using hasAttribute 2017-11-07 09:58:37 +11:00
Sam Potts
0ec0addbda Update readme.md 2017-11-07 09:16:41 +11:00
Sam Potts
fae4ca12e0 Started on docs 2017-11-06 23:06:14 +11:00
Sam Potts
84505da84b Automatic Vimeo aspect ratio 2017-11-06 22:00:00 +11:00
Sam Potts
2497e25b3c Global listeners to prevent repeat binding 2017-11-06 21:19:00 +11:00
Sam Potts
9c4b7e7094 Keyboard logic 2017-11-06 20:34:11 +11:00
Sam Potts
3a9beaed59 Vimeo captions fix 2017-11-06 20:27:19 +11:00
Sam Potts
1578525ee3 Finished aspect ratio setting 2017-11-06 20:24:07 +11:00
Sam Potts
62c1b368cf Cleanup 2017-11-06 19:53:27 +11:00
Sam Potts
f8ecea8fb7 Added Vimeo playback speed 2017-11-06 19:47:14 +11:00
Sam Potts
0068710740 Started on documentation and aspect ratio option 2017-11-06 19:38:31 +11:00
Sam Potts
d206b8ab34 Merge pull request #696 from yuriykuzin/enable-speed-controls-on-vimeo
Enable speed controls using Vimeo API
2017-11-06 19:37:47 +11:00
Sam Potts
51c011b733 Merge branch 'master' into enable-speed-controls-on-vimeo 2017-11-06 19:37:02 +11:00
Sam Potts
5fe477340b Tab focus classname change 2017-11-05 23:20:26 +11:00
Sam Potts
45df319823 Keyboard shortcut tweaks 2017-11-05 23:09:33 +11:00
Sam Potts
6bebbe4153 Key listeners fix 2017-11-05 20:49:37 +11:00
Sam Potts
374de800a4 Captions fix 2017-11-05 18:57:22 +11:00
Sam Potts
60084a17f8 YouTube volume fix 2017-11-05 18:40:41 +11:00
Sam Potts
4d417d0396 Vimeo fix 2017-11-05 12:04:31 +11:00
Sam Potts
e2d8bd2b73 Captions language fix 2017-11-05 11:59:15 +11:00
Sam Potts
1c693df00b src getter fix, local storage fix 2017-11-05 11:45:02 +11:00
Sam Potts
8aaa932050 Cleanup 2017-11-05 01:13:00 +11:00
Sam Potts
3cd6c2acf6 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-11-05 01:02:17 +11:00
Sam Potts
3930ebb339 Menu design tweaks, moved logic into plugins 2017-11-05 01:02:10 +11:00
Sam Potts
b102714067 Merge pull request #705 from friday/editorconfig
Add .editorconfig file
2017-11-05 00:49:45 +11:00
Sam Potts
13d3037a53 Meta data and icons updated 2017-11-05 00:29:21 +11:00
Albin Larsson
1e7a60ee5c Add .editorconfig file 2017-11-04 14:16:00 +01:00
Sam Potts
8d80f6b05d Removed log 2017-11-04 23:53:03 +11:00
Sam Potts
3c99357f06 Vimeo fixes + small bug fixes 2017-11-04 23:18:47 +11:00
Sam Potts
597b3fe0db Retrofit PRs 2017-11-04 22:41:18 +11:00
Sam Potts
a757acad15 Merge pull request #577 from brandon-pereira/master
fix for svg4everybody conflicting with plyr
2017-11-04 22:25:27 +11:00
Sam Potts
7913cf837f Merge branch 'master' into master 2017-11-04 22:25:17 +11:00
Sam Potts
e98d356ede Merge branch 'master' into master 2017-11-04 22:22:49 +11:00
Sam Potts
c9c20345c0 Merge pull request #613 from vers-one/master
Fix for handling explicitly set duration of audio
2017-11-04 22:19:47 +11:00
Sam Potts
aca06be7ac Merge branch 'master' into master 2017-11-04 22:19:39 +11:00
Sam Potts
550cc6a19b Merge branch 'master' into master 2017-11-04 22:19:17 +11:00
Sam Potts
e44e93c117 Merge pull request #617 from oemueller/patch-1
[bugfix] target is null exception
2017-11-04 22:17:00 +11:00
Sam Potts
a06a8150ef Merge pull request #649 from waltercruz/master
Adding title to the player html template
2017-11-04 22:16:28 +11:00
Sam Potts
e787934ee6 Merge branch 'master' into master 2017-11-04 22:16:16 +11:00
Sam Potts
be4b5ef4db Merge branch 'master' into master 2017-11-04 22:14:55 +11:00
Sam Potts
55c5b8b07e Typo 2017-11-04 21:32:19 +11:00
Sam Potts
a924d40620 Merge pull request #654 from jjui/patch-1
Enable start/stop toggle on whole element
2017-11-04 21:29:25 +11:00
Sam Potts
0074e77a7c Update plyr.scss 2017-11-04 21:28:38 +11:00
Sam Potts
f3141690ee Update plyr.less 2017-11-04 21:28:17 +11:00
Sam Potts
7ac5b0e18b Merge pull request #678 from StudyTube/use-url-as-input-for-vimeo-player
Add URL as a possible input option to Vimeo player
2017-11-04 21:24:55 +11:00
Sam Potts
d920de2a25 Small tweaks 2017-11-04 21:19:02 +11:00
Sam Potts
5abf7e9535 Merge pull request #703 from gurupras/early-listener-fix
Allow Plyr.setup event listeners to be set up as separate event listeners
2017-11-04 18:15:03 +11:00
Sam Potts
650ee2c18f Merge pull request #700 from ashkanhosseini/master
fix #684 memory leaks issues after destroy.
2017-11-04 18:11:35 +11:00
Sam Potts
069c8093ae Small bug fixes 2017-11-04 14:45:06 +11:00
Sam Potts
1cc2930dc0 ES6-ified 2017-11-04 14:25:28 +11:00
Guru Prasad Srinivasa
95734cf7cc Allow setup event listeners to be set up as separate event listeners
rather than in-conjunction with defaultListener

This allows the setup listeners to do things like
preventDefault()/stopImmediatePropagation() and have them work
2017-11-01 04:15:03 -04:00
Sam Potts
3d50936b47 Split LESS into more granular files, Vimeo fixes 2017-10-28 20:14:33 +11:00
Ashkan Hosseini
7234e2f5a3 fix #684 memory leaks issues after destroy. 2017-10-28 00:09:40 +03:00
Sam Potts
dd9d5c8898 Linting and minor changes 2017-10-27 15:06:16 +11:00
Yuriy
e06b689f5c Enable speed controls using Vimeo API 2017-10-26 17:11:19 +03:00
Sam Potts
71db66d802 Error pages 2017-10-26 20:59:40 +11:00
Sam Potts
959b5a20e3 Inlined SVGs, fixed build 2017-10-26 00:10:56 +11:00
Sam Potts
9de5c0cf39 Built JS 2017-10-26 00:00:15 +11:00
Sam Potts
1a3868a6c6 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-10-25 23:59:59 +11:00
Sam Potts
378aa159b8 Docs/demo refresh 2017-10-25 23:59:53 +11:00
Sam Potts
6876a9163d Merge pull request #694 from friday/fix/volume-steps
Restore volume stepping via key up/down
2017-10-25 23:59:15 +11:00
Sam Potts
34d28a69ad Merge pull request #693 from friday/fix/instanceof-undefined
v3: Add instanceof wrapper to avoid TypeErrors
2017-10-25 23:54:10 +11:00
Albin Larsson
0715d3ae67 Restore up/down arrow behavior from v2 (10 steps between min and max instead of one) 2017-10-25 14:25:10 +02:00
Albin Larsson
542095f5eb Add instanceof wrapper that avoids TypeError when second argument is undefined 2017-10-25 14:10:38 +02:00
Sam Potts
57517a9dcc Fullscreen improvements 2017-10-18 23:55:53 +11:00
Sam Potts
751708ff23 Fix 2017-10-18 19:47:03 +11:00
Sam Potts
fcf944788a Cleanup 2017-10-18 12:47:54 +11:00
Sam Potts
36a84c5c2d Removed extra <progress> for populating lower fill on range inputs 2017-10-18 12:43:10 +11:00
Sam Potts
4392abfc49 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
2017-10-08 19:12:55 +11:00
Sam Potts
3238b6a36a Fullscreen fix 2017-10-08 19:12:25 +11:00
Sam Potts
18a5edef0e Linting 2017-10-08 19:10:04 +11:00
Yuriy Kuzin
1b3a6b340d Add URL as a possible input option to Vimeo player
This is reasonable to processing correctly private Vimeo links, like https://vimeo.com/25345658/fe46e209ac - that contain not only vimeo id, but also private key
2017-10-06 14:41:57 +03:00
Sam Potts
b3759e966d Version bump 2017-10-05 22:47:27 +11:00
Sam Potts
34172b9aee Fullscreen bug fix (fixes #664) 2017-10-05 22:46:48 +11:00
Sam Potts
02cb093f7b Small tweaks to focus 2017-10-03 00:00:45 +11:00
Sam Potts
d6977473b1 Formatting 2017-10-02 21:03:51 +11:00
Sam Potts
15cffad89e CDN URLs 2017-10-02 14:54:35 +11:00
Sam Potts
a21ffe983c Demo fixes 2017-10-02 14:52:31 +11:00
Sam Potts
0d96601d1a CDN URLs 2017-10-02 14:48:15 +11:00
Sam Potts
9fb79f29fd Readme fix 2017-10-02 14:25:14 +11:00
Sam Potts
032d73408f CDN URL updates 2017-10-02 14:18:44 +11:00
Sam Potts
7959297a98 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-10-02 13:55:08 +11:00
Sam Potts
6dd010ea34 Comments, small tweaks 2017-10-02 13:55:03 +11:00
Sam Potts
f89ddb2f1b Merge pull request #669 from friday/fix/prevent-buttons-from-submitting-form
Prevent buttons from submitting form (v3)
2017-09-27 23:33:28 +10:00
Sam Potts
2e5cc272e3 Merge pull request #670 from friday/fix/errors-without-settings-pane
Avoid errors when initiating plyr without settings (v3)
2017-09-27 23:32:25 +10:00
Albin Larsson
ebd13c63e8 Avoid multiple errors when initiating plyr without 'settings' in controls 2017-09-27 05:09:56 +02:00
Albin Larsson
ec091266aa Prevent buttons from submitting form 2017-09-27 02:34:23 +02:00
Sam Potts
ad105877ed Merge pull request #667 from friday/fix/caption-feature-detection
Fix 'TypeError: Cannot read property 'kind' of null' in captions feat…
2017-09-27 10:03:25 +10:00
Albin Larsson
c84f666b55 Fix 'TypeError: Cannot read property 'kind' of null' in captions feature detection if video lacks captions 2017-09-27 00:24:54 +02:00
J
72412d26a5 Update plyr.less 2017-09-09 13:31:39 +02:00
J
bf02c69daa Enable start/stop toggle on whole element
Related to issue https://github.com/sampotts/plyr/issues/587
2017-09-09 13:25:22 +02:00
Sam Potts
2bba1f30e2 Fixing Vimeo captions, WIP on settings menu, prettier and VS code settings 2017-09-03 14:36:55 +10:00
Walter Cruz
01f50f03f1 dding title to the player html template (build) 2017-08-28 10:32:56 -03:00
Walter Cruz
f50f0eb63d Adding title to the player html template 2017-08-28 10:19:29 -03:00
Sam Potts
2196665495 Cleanup 2017-08-16 13:30:27 +10:00
Sam Potts
0148c76c30 ESLint, comments, quality and speed menus 2017-08-16 00:36:23 +10:00
Sam Potts
3fe0c7c84b Update readme.md 2017-08-13 21:07:22 +10:00
Sam Potts
18b2cbb2e9 Small tweak 2017-08-13 13:54:16 +10:00
Sam Potts
f6a7555a1d Work on quality control 2017-08-06 21:00:31 +10:00
Sam Potts
f7144dc0cb Fix bug when switching sources 2017-08-06 13:42:37 +10:00
Sam Potts
a9957211f4 Work on playback rate changes 2017-07-31 09:58:30 +10:00
Sam Potts
7b60e473fa Small tweaks 2017-07-23 21:13:11 +10:00
Oliver
b114a6f42e [bugfix] target is null exception
when using 'play-large' without a 'play' button, the statement target = target[0]; caused an error. So it is necessary to check the value of target before accessing [0]
2017-07-12 22:17:25 +02:00
Sam Potts
dfc516baf6 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-07-09 17:17:26 +10:00
Sam Potts
b0d3bcd15a Notes 2017-07-09 17:17:21 +10:00
Sam Potts
03c3960e93 Tweaks 2017-07-09 17:14:42 +10:00
versfx
d0ceefe827 Gulp build 2017-07-06 23:41:34 -04:00
versfx
e756664750 Fix for https://github.com/sampotts/plyr/issues/601 2017-07-06 23:28:31 -04:00
Sam Potts
21f444ed61 Tweaks 2017-06-12 09:26:01 +07:00
Sam Potts
40b4f8e840 Tweaks 2017-06-04 22:39:21 +10:00
Sam Potts
bc61dac4c5 Tidy up, fixing destroy 2017-06-04 18:30:37 +10:00
Sam Potts
3605989226 Warning 2017-06-04 15:51:37 +10:00
Sam Potts
a49d77afab Source change fix 2017-06-04 15:50:47 +10:00
Sam Potts
7daa08c32f Change to proper constructor + prototypes 2017-06-04 15:27:37 +10:00
Sam Potts
aaab9ad082 Seperated reduce motion check 2017-05-22 09:07:14 +10:00
Sam Potts
86c9004183 More work on the menu 2017-05-22 08:55:45 +10:00
Sam Potts
857dfe838c Menu toggle 2017-05-21 17:50:07 +10:00
Sam Potts
6828bc00f8 Delete notes.md 2017-05-16 10:31:07 +10:00
Sam Potts
e1a19faf26 URL updates 2017-05-16 10:20:58 +10:00
Sam Potts
e95c81cc5b Update bower.json 2017-05-16 10:17:57 +10:00
Sam Potts
f3bda17fa0 Merge branch 'master' into develop
# Conflicts:
#	demo/dist/demo.js
#	demo/src/js/main.js
#	dist/plyr.js
#	notes.md
#	src/js/plyr.js
2017-05-16 10:17:04 +10:00
Sam Potts
c0eee58732 Plugin versions 2017-05-16 10:14:01 +10:00
Sam Potts
bcf88cd024 Vimeo demo bug fix + repo move 2017-05-16 10:08:59 +10:00
Sam Potts
966c3d875d Single instance only 2017-05-16 09:58:53 +10:00
Sam Potts
fe9383bed5 Cleanup 2017-05-09 21:30:09 +10:00
Sam Potts
2c31770030 Update notes 2017-05-09 00:20:22 +10:00
Sam Potts
8d3e160166 Adding support for playsinline 2017-05-09 00:18:19 +10:00
Sam Potts
408cfe5b97 Added support for passive event listeners 2017-05-08 23:07:19 +10:00
Sam Potts
279fee3595 Bug fixes 2017-05-07 20:17:36 +10:00
Sam Potts
28dddfcff2 Vimeo captions working 2017-05-07 20:07:08 +10:00
Sam Potts
9e2580ec6a Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
2017-05-07 19:04:05 +10:00
Sam Potts
aba5a9dc0e Utils object, work on Vimeo captions 2017-05-07 19:03:48 +10:00
Brandon Pereira
d27a0b3855 updated to check for global namespace 2017-05-01 16:53:54 -06:00
Brandon Pereira
a575aa25ac fix for svg4everybody conflicting with plyr 2017-05-01 15:50:54 -06:00
Sam Potts
9999828505 Merge pull request #574 from mapmelabs/youtube-loop
Implement loop in YouTube
2017-04-28 13:12:31 +10:00
Alejandro Iglesias
b04301c211 Implement loop in YouTube 2017-04-27 11:53:53 -03:00
Sam Potts
97157efcfa More work on Vimeo captions 2017-04-26 00:24:42 +10:00
Sam Potts
3756476809 Merge branch 'develop' of github.com:Selz/plyr into develop 2017-04-25 22:39:21 +10:00
Sam Potts
b3d798eeee Gulp tweak 2017-04-25 22:39:14 +10:00
Sam Potts
b499622eb8 Started on Vimeo captions 2017-04-25 20:45:25 +10:00
Sam Potts
04b8d0bac8 Tweaks 2017-04-25 19:31:34 +10:00
Sam Potts
8ea4cbd942 Tidy up 2017-04-25 18:43:09 +10:00
Sam Potts
7889ae1126 Built JS 2017-04-25 18:37:56 +10:00
Sam Potts
897d49ad87 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-04-25 18:37:36 +10:00
Sam Potts
1960d35d8b More work on menus and tidy up 2017-04-25 18:37:31 +10:00
Sam Potts
0b7d0dedf6 Merge pull request #545 from silverwind/blank-mp4
Add blank.mp4 to dist files
2017-04-25 12:40:20 +10:00
Sam Potts
948e2cc66c Merge branch 'develop' into blank-mp4 2017-04-25 12:40:13 +10:00
Sam Potts
396b816a1f Merge pull request #563 from stormrockwell/master
removed vimeo id parsing because it is not necessary
2017-04-25 12:37:43 +10:00
Sam Potts
0a58cbfd59 Merge branch 'develop' into master 2017-04-25 12:37:35 +10:00
Sam Potts
bbe4b7e565 Notes 2017-04-22 14:55:03 +10:00
stormrockwell
2ecca2cbe3 removed vimeo id parsing because it is not necessary 2017-04-19 15:16:03 -04:00
Sam Potts
f5d80fa888 Notes 2017-04-19 22:40:32 +10:00
Sam Potts
f2bbe4eb12 Looping menu (WIP) 2017-04-19 22:34:52 +10:00
Sam Potts
60e51b7077 Added notes 2017-04-19 21:33:23 +10:00
Sam Potts
01d1ac9ab9 Toggle menu 2017-04-17 21:05:35 +10:00
Sam Potts
9b2396f5ff Airplay and PiP 2017-04-17 01:28:52 +10:00
Sam Potts
da15980b8a ID fix and styling fix 2017-04-17 00:32:41 +10:00
Sam Potts
452678867f More work on menus 2017-04-16 20:38:45 +10:00
Sam Potts
ff2d27f8e5 Cleanup events and references 2017-04-16 13:00:57 +10:00
Sam Potts
546cdaad92 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
2017-04-15 23:22:35 +10:00
Sam Potts
5d38497f07 Formatting 2017-04-15 23:22:14 +10:00
Sam Potts
808a3af3cf Formatting 2017-04-15 23:21:18 +10:00
Sam Potts
889712761a Merge branch 'develop' of github.com:Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	src/js/plyr.js
2017-03-29 09:05:25 +11:00
Sam Potts
46fab972a0 Namespacing 2017-03-29 09:03:33 +11:00
Sam Potts
535c046b62 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	src/js/plyr.js
2017-03-28 09:30:37 +11:00
Sam Potts
55dfab8394 Tweaks 2017-03-28 09:19:58 +11:00
Sam Potts
18bf4d84b9 Menu creation (WIP) 2017-03-28 00:12:33 +11:00
Sam Potts
ef1d73df15 Controls rewrite 2017-03-27 00:25:41 +11:00
Sam Potts
684107da5c WIP on new controls creation 2017-03-26 21:32:41 +11:00
silverwind
2a97a9a9c5 Add blank.mp4 to dist files
For a complete "offline" experience, it's necessary to self-host the
file, so include it in the dist files for that purpose.
2017-03-25 10:58:36 +01:00
Sam Potts
ca12343b16 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-03-25 18:44:17 +11:00
Sam Potts
a974fbf31c Notes 2017-03-25 18:44:10 +11:00
Sam Potts
6eaf33ec6c Merge pull request #520 from platformpurple/feature/subtitles
Feature/subtitles
2017-03-25 18:43:45 +11:00
Sam Potts
33fef7faee Merge branch 'develop' into feature/subtitles 2017-03-25 18:43:36 +11:00
Sam Potts
b083bf4297 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
#	src/js/plyr.js
#	src/less/plyr.less
#	src/scss/plyr.scss
2017-03-25 11:24:38 +11:00
Sam Potts
4957e4d80c Version bump to 2.0.12 2017-03-25 10:58:41 +11:00
Sam Potts
605f8a8249 Changelog update 2017-03-25 10:57:52 +11:00
Sam Potts
7490a7e7f3 Merge pull request #468 from jronallo/captions-listener
allow for setting additional listener for captions
2017-03-25 10:51:54 +11:00
Sam Potts
f32527feb4 Merge pull request #504 from ShimShamSam/master
Add blankUrl option to set the URL for blank.mp4
2017-03-25 10:50:55 +11:00
Sam Potts
ebc7ed538a Manual merge of #509 2017-03-25 10:49:04 +11:00
Sam Potts
a60868bfe8 Clean up 2017-03-25 10:47:37 +11:00
Sam Potts
4a2866d05f Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
2017-03-25 10:37:21 +11:00
Sam Potts
1a05f352c7 Code formatting 2017-03-25 10:37:00 +11:00
Sam Potts
ba27de0669 Merge pull request #510 from platformpurple/feature/loop-events
Added key bindings for loop
2017-03-25 10:35:15 +11:00
Sam Potts
e21e7054ce Merge branch 'develop' into feature/loop-events 2017-03-25 10:35:08 +11:00
Sam Potts
bc323e905c Manual merge of #543 PR 2017-03-25 10:27:03 +11:00
Sam Potts
afa1fe9d5f Merge pull request #514 from platformpurple/improvement/loop-color-area
Improvement/loop color area
2017-03-25 10:22:10 +11:00
Sam Potts
2444efc834 Merge branch 'develop' into improvement/loop-color-area 2017-03-25 10:22:02 +11:00
Sam Potts
7b6257ff20 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
2017-03-25 10:09:14 +11:00
Sam Potts
13973125fb Loop variable naming 2017-03-25 10:08:39 +11:00
Sam Potts
ddf9104349 Merge pull request #511 from platformpurple/develop
Fix on typo
2017-03-25 10:07:07 +11:00
Marios Tasos
47b53fffb4 remove commented out code 2017-03-24 17:29:48 +02:00
Marios Tasos
9ba3753f80 toggle quality options 2017-03-24 17:25:09 +02:00
Marios Tasos
a353194fe1 make config.captions.selectedIndex number 2017-03-22 15:50:56 +02:00
Marios Tasos
c205c47509 set captionExists to true if selectedIndex is bigger than capt source 2017-03-22 13:38:08 +02:00
Marios Tasos
9c867edfbc fix data typo in language button 2017-03-18 01:59:20 +02:00
Marios Tasos
9919d80782 check if captions exists 2017-03-15 17:18:34 +02:00
Sam Potts
a971850d26 Update readme.md 2017-03-09 15:35:29 +11:00
Chrysa Papadopoulou
8464ffe6ad Conflicts and tracks array on config 2017-02-24 16:38:00 +02:00
Chrysa Papadopoulou
6537225c61 Subtitles tracks 2017-02-24 16:32:17 +02:00
Chrysa Papadopoulou
dcbf59bd89 Colored strip indicating looped area 2017-02-15 17:41:04 +02:00
Chrysa Papadopoulou
21d478d396 Add looping key bindings to allowed array 2017-02-14 17:15:27 +02:00
Chrysa Papadopoulou
054c243416 Fix on typo and gulp 2017-02-14 16:44:29 +02:00
Chrysa Papadopoulou
d57e453541 Fix on typo 2017-02-14 16:42:40 +02:00
Chrysa Papadopoulou
3f45ef4908 Removed console 2017-02-14 16:29:05 +02:00
Chrysa Papadopoulou
1fd742464d Added key bindings for loop 2017-02-14 16:04:58 +02:00
Samuel Hodge
382397407f Generated dist files 2017-02-12 00:15:21 -05:00
Samuel Hodge
82809235b9 Documented the blankUrl option 2017-02-11 23:59:14 -05:00
Samuel Hodge
7d5c507f16 Allow configuration of the blank.mp4 URL
This is useful for people behind firewalls who need to host a blank mp4 themselves.
2017-02-11 23:50:49 -05:00
Sam Potts
bc139f16a7 Update readme.md 2017-02-10 11:21:20 +11:00
Sam Potts
f6f3284dc5 Update readme.md 2017-02-10 11:19:37 +11:00
Sam Potts
f4d2f1856f Update readme.md 2017-02-09 23:38:52 +11:00
Sam Potts
871e19ed92 Update readme.md 2017-02-09 23:37:29 +11:00
Sam Potts
9c599884a8 Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	src/js/plyr.js
2017-02-05 11:36:53 +11:00
Sam Potts
cbef45841c Menu work 2017-02-05 11:34:33 +11:00
Sam Potts
96d9f302c2 Merge pull request #490 from platformpurple/develop
Playback speed and looping controls
2017-02-05 11:31:58 +11:00
Chrysa Papadopoulou
afcdf17a72 Removed not needed functions + reverted demo.js to previous 2017-02-03 14:52:38 +02:00
Chrysa Papadopoulou
1bcdbe4c00 Refactored loop event buttons + on 'No Loop' cleared displayed timing 2017-02-02 11:38:08 +02:00
Chrysa Papadopoulou
45c0ded88c Loop functionality 2017-02-01 19:16:39 +02:00
Chrysa Papadopoulou
ea30ad9494 Playback speed control settings 2017-01-31 17:21:33 +02:00
Sam Potts
7608615702 Merge branch 'develop' of https://github.com/Selz/plyr into develop 2017-01-11 20:14:48 +11:00
Sam Potts
cc5f37392f ToDo notes, code tidy up 2017-01-11 20:14:41 +11:00
Sam Potts
413fcbcb8c Merge branch 'develop' of github.com:Selz/plyr into develop
# Conflicts:
#	dist/plyr.js
#	src/js/plyr.js
2017-01-10 21:47:49 +11:00
Sam Potts
c49d0a99e4 JsBeautifier 2017-01-10 21:43:28 +11:00
Sam Potts
5a0cb9289c JsBeautifier in use, syntax tweaks 2017-01-10 20:22:18 +11:00
Sam Potts
72998c4c41 Merge pull request #437 from tv2/playground
Fixed typo
2017-01-10 20:21:01 +11:00
Sam Potts
da48be495b Merge pull request #477 from iamrobert/patch-1
Update index.html
2017-01-10 14:51:40 +11:00
Robert Stark
c843ed3460 Update index.html
Just missing the closing </li>
2017-01-10 11:50:26 +08:00
Sam Potts
4232aa9ea4 Update issue_template.md 2017-01-10 09:47:46 +11:00
Sam Potts
f6612fa78c Update issue_template.md 2017-01-10 09:45:41 +11:00
Sam Potts
bce1d983cb Merge pull request #457 from amowu/patch-3
fix: Firefox can not display captions
2017-01-04 08:45:40 +11:00
Sam Potts
047fc43f8f Merge pull request #458 from amowu/patch-4
fix: parse webVTT time NaN
2017-01-04 08:45:06 +11:00
Jason Ronallo
96ae866baa allow for setting additional listener for captions 2016-12-26 17:06:59 -05:00
Amo Wu
0cbfc9252c fix: parse webVTT time NaN 2016-12-16 14:32:04 +08:00
Amo Wu
d02e57bdb3 fix: Firefox can not display captions 2016-12-15 16:38:46 +08:00
Morten Vestergaard Hansen
a1d5bccac2 Fixed typo 2016-11-30 08:54:24 +01:00
Sam Potts
a9bb8afca4 v2.0.11 2016-11-27 20:18:30 +11:00
Sam Potts
28cd92b708 Merge branch 'master' of https://github.com/Selz/plyr 2016-11-27 20:15:19 +11:00
Sam Potts
a44c7ecc3a Fix for iPad and YouTube issues 2016-11-27 20:15:15 +11:00
Sam Potts
663c1fb627 Merge pull request #427 from amowu/patch-2
Fix cannot scroll after destroyed
2016-11-27 20:09:49 +11:00
Amo Wu
a7969b8e9e Fix cannot scroll after destroyed
In single page application, switch router when plyr is fullscreen mode, page cannot scroll, because `document.body.style.overflow` is `hidden`
2016-11-24 11:21:43 +08:00
Sam Potts
4ca3f030cc Merge pull request #419 from amowu/patch-1
refactor: miss prefix
2016-11-18 09:48:40 +11:00
Sam Potts
5214c5d55d Merge pull request #425 from sebastiancarlsson/cleanup-called-twice-bug
fixes bug where cleanUp would be called twice
2016-11-18 09:40:34 +11:00
Sebastian Carlsson
3e6ed7b69b fixes bug where cleanUp would be called twice 2016-11-17 15:43:26 +01:00
Sam Potts
7d2a8d343a Update 2016-11-16 09:41:06 +11:00
Sam Potts
03aacf483f Update readme.md 2016-11-16 09:40:09 +11:00
Amo Wu
02bc8c8445 refactor: miss prefix
fix _fullscreen.prefix can't work
2016-11-10 16:27:10 +08:00
Sam Potts
7965b82cca Quality WIP 2016-11-06 21:47:44 +11:00
Sam Potts
bae04a492a Merge branch 'master' into develop
# Conflicts:
#	demo/index.html
#	dist/plyr.js
2016-11-06 15:55:55 +11:00
Sam Potts
73a1391f2f Update readme.md 2016-11-02 18:45:37 +11:00
Sam Potts
660ff0434d Cache bust 2016-11-02 18:29:38 +11:00
Sam Potts
94208dce76 v2.0.10
- Added seek event fixes for Vimeo and YouTube (fixes #409)
- Added support for embed URLs rather than ID only (fixes #345)
2016-11-02 18:14:06 +11:00
Sam Potts
efe54fbba4 Added seek event fixes (fixes #409), Added support for URLs (fixes #345) 2016-11-02 18:09:40 +11:00
Sam Potts
10561d6c83 Merge pull request #408 from gurupras/urlparser
Added logic to parse youtube video id
2016-11-02 16:59:28 +11:00
Sam Potts
72404e77e5 PiP 2016-11-01 12:00:16 +11:00
Guru Prasad Srinivasa
0ef87f93a6 Added logic to parse youtube video id
This commit is targetted at solving issue#345 and adds
    functionality to parse youtube video IDs from various
    types of youtube video URLs.

    Other embed types like vimeo/soundcloud can be extended by
    following a similar structure as implemented in this commit.
2016-10-30 00:49:17 -04:00
Sam
c7310c21fb Fullscreen fix, styling 2016-10-24 00:11:47 +11:00
Sam
ed9e27b64f Merge branch 'develop' of https://github.com/Selz/plyr into develop 2016-10-23 21:42:18 +11:00
Sam Potts
801ed63be5 Work on PiP 2016-10-23 21:21:42 +11:00
Sam
2aa9b267ab Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	src/js/plyr.js
2016-10-23 21:16:49 +11:00
Sam
90338d9600 Tweaks 2016-10-23 21:15:19 +11:00
Sam Potts
5cecf16d4f Merge branch 'master' into develop
# Conflicts:
#	demo/dist/demo.js
#	dist/plyr.css
#	dist/plyr.js
2016-10-23 15:27:28 +11:00
Sam Potts
a3ed309342 v2.0.9
- Temporary patch for the YouTube API issues with `getDuration()` (relates to #374)
2016-10-23 15:18:53 +11:00
Sam Potts
08b4c09b89 Temporary patch for the YouTube API issues with getDuration() (relates to #374) 2016-10-23 15:18:08 +11:00
Sam Potts
a509a5e1bc v2.0.8
- Added `isPaused()` API method (thanks to @darrena092)
- Allowed `.on()` API method to be chainable (thanks to @gurupras) (fixes #357)
- Improved the "awful" rendering of captions on small screens in fullscreen mode (fixes #390)
- Fix for Firefox VTT compatibility (thanks to @magourex)
- Fix for Firefox Developer Edition blank video due to `-webkit-mask-image` issue (fixes #392)
- Added Issue and PR templates with the aim of reducing duplicate or duff issues
2016-10-23 13:48:05 +11:00
Sam Potts
bec10e7836 Fix for caption size (fixes #390), Fix for Firefox Dev (fixes #392) 2016-10-23 13:35:49 +11:00
Sam Potts
f9a184800b Add Issue and PR templates 2016-10-23 13:34:44 +11:00
Sam Potts
f428c3ff8b Manually merged #395 2016-10-23 12:19:39 +11:00
Sam Potts
97eb40a8e3 Merge pull request #389 from darrena092/master
Added .isPaused().
2016-10-23 11:51:10 +11:00
Darren Anderson
8211631950 Gulp build done. 2016-10-06 15:43:41 +01:00
Darren Anderson
a17cbb0e8b Added .isPaused to API 2016-10-06 15:33:49 +01:00
Sam Potts
21a30f1b6f Fixed for array passed to _on and _off 2016-10-03 17:16:05 +11:00
Sam
613c45ede9 Merge branch 'master' into develop 2016-10-01 22:18:40 +10:00
Sam
8743c6a08d Code style 2016-10-01 22:18:01 +10:00
Sam Potts
8098be6f93 Merge pull request #379 from magourex/master
Support WebVTT with CRLF or LF Line separator with firefox #378
2016-10-01 22:10:35 +10:00
Sam
eba0831538 Manually merged #385 2016-10-01 22:07:01 +10:00
Thomas LM
1c73c9fbfe Update plyr.js 2016-09-27 10:57:35 +02:00
Sam
1ad103c29f Menu animation 2016-09-26 23:21:57 +10:00
Sam
ca37b4c9ac Menu 2016-09-25 23:54:49 +10:00
Sam Potts
d3bbf09d12 More menu work 2016-09-25 20:01:58 +10:00
Sam Potts
f608317eec Merge branch 'develop' of https://github.com/Selz/plyr into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
2016-09-14 15:22:41 +10:00
Sam Potts
c8b9c9bcaa Expanded 2016-09-13 23:52:25 +10:00
Sam
d638cdcdd3 Started on PIP support 2016-09-13 00:16:27 +10:00
Sam Potts
46f82a4af3 Added quality in menu 2016-09-07 22:18:05 +10:00
Sam Potts
978606edb4 CSS path 2016-09-06 23:54:04 +10:00
Sam
42a2642d40 Icon fix 2016-09-06 23:50:59 +10:00
Sam
37840c3844 Working on settings menu 2016-09-06 23:48:09 +10:00
Sam Potts
28335ef3d8 Merge pull request #356 from amowu/feature/add-playback-speed
Add playback speed
2016-09-06 20:46:00 +10:00
Amo Wu
78ec5b3322 refactor: sorting speed 2016-09-05 22:56:19 +08:00
Amo Wu
ac7e1ab299 test: add speed-up button 2016-09-05 18:00:11 +08:00
Amo Wu
ea60fd0f45 docs: update readme 2016-08-31 17:18:44 +08:00
Amo Wu
c291e8c5d9 refactor: check config.speeds format 2016-08-31 15:42:01 +08:00
Amo Wu
f0ac542a7f refactor: add localStorage supporting 2016-08-31 15:34:44 +08:00
Amo Wu
a412085785 feat: add playback speed button 2016-08-31 15:11:29 +08:00
Sam
435b5c74bf Fixed API method, added new methods (fixes #346, #351)
- Fixed `getCurrentTime()` method (fixes #351)
- Added `getVolume()` , `isMuted()` and `getDuration()` API methods (fixes #346)
2016-08-29 23:36:43 +10:00
Sam
15fd7041ab Fixed AMD definition 2016-08-26 21:43:51 +10:00
Sam Potts
1ced6b4d67 Vimeo IE9/10 (Fixes #348), HTML5 ready event (Fixes #349) 2016-08-26 18:15:24 +10:00
Sam
6694c1e6cf Fix for Firefox full screen (fixes #343) 2016-08-23 00:34:43 +10:00
Sam Potts
19ca906e50 Update changelog.md 2016-08-22 20:41:49 +10:00
Sam Potts
12e94775d6 Global keyboard shortcut changes 2016-08-22 14:44:18 +10:00
Sam Potts
df7f52d885 Added ‘global’ keyboard shortcut option 2016-08-22 14:15:49 +10:00
Sam Potts
d5b5faafbb Version bump for NPM 2016-08-22 13:08:19 +10:00
Sam Potts
a318e8588b Merge branch 'master' of https://github.com/Selz/plyr 2016-08-22 13:07:07 +10:00
Sam Potts
51fb252cd8 Update changelog.md 2016-08-22 13:06:26 +10:00
Sam Potts
86b2f61b56 Bump to v2.0.0 2016-08-22 13:00:47 +10:00
Sam Potts
232a9fe868 Update changelog.md 2016-08-22 12:53:38 +10:00
Sam Potts
e8bfe73b1d Update readme.md 2016-08-22 08:40:02 +10:00
Sam Potts
ab0d762675 Update readme.md 2016-08-21 22:46:11 +10:00
Sam Potts
a6a314e011 Update readme.md 2016-08-21 21:53:16 +10:00
Sam Potts
514bdff92e Update readme.md 2016-08-21 21:53:02 +10:00
Sam Potts
745e56a3a3 Update readme.md 2016-08-21 21:40:24 +10:00
Sam Potts
130fb78b4c Version bump 2016-08-21 19:47:13 +10:00
Sam Potts
3718ec69ba Use minified 2016-08-21 19:45:45 +10:00
Sam Potts
4610f4a8c9 Firefox and Edge fixes 2016-08-21 19:44:46 +10:00
Sam Potts
a8062354ec Loading tweaks, Microsoft Edge tweaks 2016-08-21 19:25:21 +10:00
Sam
aac0a5a3a9 Work on docs 2016-08-21 10:30:11 +10:00
Sam
92b9e3400b Keyboard shortcuts 2016-08-20 23:39:18 +10:00
Sam
bea513f5dd Jshint tweaks, changelog 2016-08-20 20:11:21 +10:00
Sam Potts
9d109bf02d Refactoring and bug fixing 2016-08-20 18:02:02 +10:00
Sam Potts
fc45ab48c9 Merge branch 'master' into develop
# Conflicts:
#	src/js/plyr.js
2016-08-20 17:46:05 +10:00
Sam Potts
58e9b02405 Merge 2016-08-06 11:09:55 +10:00
Sam Potts
b578fb4840 Merge branch 'master' of https://github.com/Selz/plyr 2016-08-06 11:08:33 +10:00
Sam Potts
f18d9589eb Font stack SASS fix (Fixes #328) 2016-08-06 11:08:28 +10:00
Sam Potts
35c6ec9461 Manually merged #313 PR 2016-08-06 11:08:04 +10:00
Sam Potts
56d9730d0a Merge pull request #326 from mkaziz/master
Updated define to work with AMD imports
2016-08-06 10:15:53 +10:00
Khalid Aziz
6e18bc8b31 Updated define to work with AMD imports 2016-08-04 02:05:12 -05:00
Sam Potts
81756a1af9 Merge pull request #322 from mortonfox/patch-1
Fix the Initialising and Options anchor links
2016-07-30 14:10:34 +10:00
Morton Fox
05e1ab1165 Fix the Initialising and Options anchor links 2016-07-30 00:09:39 -04:00
Sam Potts
a0ddc5e6eb Merge pull request #321 from electerious/patch-1
Added Array as selector in .setup() to readme
2016-07-25 08:53:29 +10:00
Tobias Reich
dc40b1f93a Added Array as selector in .setup() to readme
Documentation for #319
2016-07-24 20:52:20 +02:00
Sam Potts
d7cc29f2fb Vimeo keyboard focus fix (Fixes #317), Fix for Vimeo on basic support devices 2016-07-23 11:11:17 +10:00
Sam Potts
0505e49038 Vimeo API upgrade, YouTube Bugfix, Array support
- Vimeo API upgrade
- Fix for YouTube bug introduced in v1.8.9 (Fixes #320)
- Added support for passing array to .setup() (Fixes #319)
2016-07-23 10:42:06 +10:00
Sam Potts
6ff1e47341 Merge branch 'master' of https://github.com/Selz/plyr 2016-07-21 21:59:26 +10:00
Sam Potts
e72a91de6e Fix for seek issues introduced in v1.8.9 2016-07-21 21:59:16 +10:00
Sam Potts
52ec4c012d Update readme.md 2016-07-21 21:32:56 +10:00
Sam Potts
ae89c92ab6 Update readme.md 2016-07-21 21:31:09 +10:00
Sam Potts
57ad124ce8 v1.8.9 2016-07-21 21:25:27 +10:00
Sam Potts
a85d45d2e5 Fix for fullscreen not being defined (Fixes #295) 2016-07-21 21:21:10 +10:00
Sam Potts
a6f57fc034 Fix for multiline captions (Fixes #314) 2016-07-21 21:15:44 +10:00
Sam Potts
04c9653b86 Merge branch 'master' of https://github.com/Selz/plyr 2016-07-21 21:14:29 +10:00
Sam Potts
b8cdc71001 Clean up of type checks and fix for _restart() (Fixes #315) 2016-07-21 21:14:22 +10:00
Sam Potts
277ebf0fd1 Merge pull request #312 from dpschen/patch-1
Add kirby-plyrtag
2016-07-14 22:03:50 +10:00
Dominik Pschenitschni
7682d998e7 Add kirby-plyrtag
Added a Kirby cms kirbytag https://getkirby.com/
2016-07-14 12:52:28 +02:00
Sam Potts
05b9b9a831 Fix for MEDIA_ERR_SRC_NOT_SUPPORTED when calling .source() API method 2016-07-14 17:13:37 +10:00
Sam Potts
eee699cec6 Version bump 2016-07-10 20:59:42 +10:00
Sam Potts
3c9e9862d8 Added getCurrentTime API method (fixes #292) 2016-07-10 20:58:19 +10:00
Sam Potts
39dc651a9d Fix for !hideControls on touch devices (fixes #303) 2016-07-10 20:50:55 +10:00
Sam Potts
4effda125a Merge branch 'master' of https://github.com/Selz/plyr 2016-07-10 20:45:58 +10:00
Sam Potts
bf9de231d8 Styling minor tweaks 2016-07-10 20:45:54 +10:00
Sam Potts
ef12332505 Update readme.md 2016-06-29 16:23:38 +10:00
Sam Potts
1b735f1727 Update readme.md 2016-06-26 22:21:19 +10:00
Sam Potts
7f7ecf852e Line height fix 2016-06-26 09:07:42 +10:00
Sam Potts
931672895f Reverted font size change 2016-06-26 09:04:38 +10:00
Sam Potts
0952bc8239 Built JS 2016-06-26 08:45:06 +10:00
Sam Potts
7e7508ca82 Fixed overflow issues (fixes #286) 2016-06-26 08:34:36 +10:00
Sam Potts
095d100ba4 Version bump 2016-06-25 23:47:30 +10:00
Sam Potts
c61fad51c1 Fix for z-index on large play button 2016-06-25 23:46:37 +10:00
Sam Potts
7b11c6803d Merge pull request #283 from arrowthemes/patch-1
Make the player button clickable on small videos
2016-06-25 17:44:07 +04:00
Sam Potts
9b75436380 v1.8.3
- Disabled iPad support for YouTube and Vimeo due to iOS limitations with iFrame playback
- Fixed IE11 icon loading (fixes #269)
- Updated screenshot (fixes #281)
- Added WordPress plugin (fixes #239)
- Added Neos plugin
- Added HLS, Shaka and dash.js examples (see #235 for more)
- Improvements for controls hiding and showing on touch devices
2016-06-25 23:39:00 +10:00
Sam Potts
be19b72719 Merge branch 'master' of https://github.com/Selz/plyr
# Conflicts:
#	dist/plyr.css
#	src/less/plyr.less
#	src/scss/plyr.scss
2016-06-25 22:35:04 +10:00
Sam Potts
2fdcc18356 Hide Shadow DOM elements 2016-06-25 22:33:23 +10:00
Sam Potts
6425a33ccd Merge pull request #284 from Integer64/develop
fix name svg
2016-06-22 19:10:48 +01:00
Integer64
12c5dbd290 fix name svg 2016-06-23 01:56:14 +08:00
Joel Mbugua
cb591dac0c Make the player button clickable on small videos
If you set the plyr video to width of 300px, the plyr__controls overlays the play centered play button such that you can't click on the play button. Adding a z-index on the plyr .plyr__play-large fixes that.
2016-06-21 21:59:00 +03:00
Sam Potts
4c1cdea56e Merge pull request #275 from wilsonmsalberto/master
Prevent error when verifying if play buttons exist
2016-06-13 18:49:20 +01:00
Wilson Alberto
80cfabbaf9 Prevent error when verifying if play buttons exist 2016-06-13 17:01:46 +01:00
Sam
c7d28b09c0 Fixed event bubbling 2016-06-09 11:05:07 +01:00
Sam
161dd48312 Fixed log message 2016-06-09 09:57:16 +01:00
Sam
383515c1b7 Merge branch 'master' of https://github.com/Selz/plyr 2016-06-09 09:49:09 +01:00
Sam
98792168e4 Changes to setup return value, SVG bug fix (fixes #269) 2016-06-09 09:49:01 +01:00
Sam Potts
01437a4a38 Merge pull request #271 from thegrammarnazi/patch-3
correct grammar
2016-06-09 09:46:49 +01:00
Grammar Nazi
03ed86f5c2 correct grammar 2016-06-09 01:39:52 -05:00
Sam
1a745e1eaa Merge branch 'master' of https://github.com/Selz/plyr 2016-06-07 12:34:40 +01:00
Sam
70646ca907 See changelog (fixes #265, #253, #257) 2016-06-07 12:34:36 +01:00
Sam Potts
af774b6f02 Merge pull request #260 from cytec/fix-control-icon-size
use $plyr-control-icon-size in sass file
2016-06-02 10:41:36 +01:00
cytec
7a9eac093a use $plyr-control-icon-size in sass file 2016-06-02 11:40:09 +02:00
Sam
4afd311ef6 Version bump 2016-06-02 10:19:35 +01:00
Sam
7eec6c6739 Fix for multiple sprites being requested (fixes #259) 2016-06-02 10:18:33 +01:00
Sam
521431e093 Fix for scroll direction on volume (fixes #258) 2016-06-01 09:38:29 +01:00
Sam Potts
24bc415faf Merge pull request #256 from MrSnowflake/develop
In specific cases Plyr fails to initiate YT: YT.Player is not a constructor
2016-05-31 08:26:53 +01:00
Sam
552f448ccd Seek rounding from 1 to 4 decimal places (fixes #242) 2016-05-30 07:41:17 +01:00
MrSnowflake
152e94f229 Improved YT initialized check.
Added an extra check to see wether YT API has been initialized. The current check is inadequate as YT can be an object while the API still isn't completely initialized.
2016-05-30 00:35:07 +02:00
Sam Potts
cb318dd6ad Update readme.md 2016-05-27 08:42:11 +01:00
Sam
9ee0d00a35 Merge branch 'master' of https://github.com/Selz/plyr 2016-05-26 22:32:23 +01:00
Sam
c0909095e3 Added disableContextMenu option to hide the right click context menu (fixes #248 and #225) 2016-05-26 22:32:18 +01:00
Sam Potts
1e732694eb Merge pull request #246 from zvizvi/master
FIx Plyr to work with RTL systems
2016-05-26 08:03:40 +01:00
Tzvi
30922246e9 FIx Plyr to work with RTL systems 2016-05-26 03:35:08 +03:00
Tzvi
edf5a14171 FIx Plyr to work with RTL systems
(less)
2016-05-26 03:33:05 +03:00
Tzvi
1c9f7901bc FIx Plyr to work with RTL systems
(scss)
2016-05-26 03:32:22 +03:00
Sam Potts
1bd6ffc84d Merge pull request #237 from itaditya/master
Update readme.md
2016-05-25 19:13:13 +01:00
Sam Potts
845ed000fc Merge pull request #244 from thijstriemstra/patch-1
reference unminified js script
2016-05-25 19:12:05 +01:00
Thijs Triemstra
c7b2347ccd reference unminified js script
Reading the minified js script is impossible so reference the source version instead.
2016-05-25 19:41:12 +02:00
Sam Potts
a2f18c4e31 Merge pull request #241 from rabbitears/patch-1
Fix typo
2016-05-24 21:52:26 +01:00
louise louise
37c8948d2c Fix typo 2016-05-24 14:08:15 -04:00
Sam
351e1540c5 Version bump 2016-05-23 22:33:16 +01:00
Sam
b3299b4641 Fix for Tooltips overflowing (fixes #230) 2016-05-23 22:29:20 +01:00
Sam
be2e7d4c99 Always hide standard controls (Fixes #225) 2016-05-23 21:19:53 +01:00
Sam
7238eab737 Merge branch 'master' of https://github.com/Selz/plyr 2016-05-23 21:11:54 +01:00
Sam
3c2921b994 Restore scroll position when exiting fullscreen (fixes #236) 2016-05-23 21:11:43 +01:00
Sam Potts
179c6fca0b Update readme.md 2016-05-23 19:21:43 +01:00
Sam
69194915d4 Sprite loading improvements, touch controls
- SVG sprite loading automatically for an easier setup
- Touch devices now show controls on touch rather than pausing playback
2016-05-23 19:16:48 +01:00
Aditya Agarwal
341fd59cf6 Update readme.md 2016-05-23 21:34:57 +05:30
Aditya Agarwal
a6c8b7e506 Update readme.md
thang was a less common word , keeping it simple by using 'thing' is I think good , also there were SASS support so why not add that too.
2016-05-22 16:36:30 +05:30
Sam Potts
98e4c5acea Decreased sensitivity and inverted scroll on volume slider (scroll up to increase, down to decrease) 2016-05-19 12:06:51 +10:00
Sam Potts
1496b21c83 Version bump 2016-05-19 11:59:52 +10:00
Sam Potts
ac0061b83e Bug fix for no buffer 2016-05-19 11:56:24 +10:00
Sam Potts
0b7dc51bd1 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
2016-05-19 11:32:14 +10:00
Sam Potts
126f80ed78 Reverted LESS structure for now 2016-05-19 11:31:27 +10:00
Sam Potts
e0ef7482c6 Merge pull request #227 from igoradamenko/scroll-on-volume-slider
Add scroll listener on volume slider
2016-05-19 10:43:22 +10:00
i.adamenko
6ffb971226 Add scroll listener on volume slider 2016-05-19 02:11:41 +03:00
Sam Potts
72187a89dd Update readme.md 2016-05-19 08:47:42 +10:00
Sam Potts
a461500ab9 Update readme.md 2016-05-17 12:38:52 +10:00
Sam Potts
c830af492c Merge pull request #216 from IonicaBizauKitchen/fix
Removed "Node Package Manager" in readme.md
2016-05-17 08:30:25 +10:00
Ionică Bizău
1f6f841fcb Removed "Node Package Manager" in readme.md
`npm` does not stand for "Node Package Manager" because `npm` is not an acronym. It is a bacronymic abbreviation for "npm is not an acronym".

https://www.quora.com/I-keep-hearing-NPM-doesnt-stand-for-Node-Package-Manager-what-does-it-stand-for
2016-05-16 17:59:37 +03:00
Sam Potts
99960c0dc5 Fix for Vimeo fullscreen (fixes #214) 2016-05-16 12:28:28 +10:00
Sam Potts
e8a8b08215 Merge branch 'master' of https://github.com/Selz/plyr 2016-05-16 12:15:15 +10:00
Sam Potts
a989e87a2d Changed icon prefix default to avoid clashes 2016-05-16 12:15:09 +10:00
Sam
0bceeb4674 Merge branch 'master' of https://github.com/Selz/plyr
# Conflicts:
#	dist/plyr.css
#	src/less/variables.less
2016-05-15 19:54:03 +10:00
Sam
5a433f2fc8 Remove unused styles 2016-05-15 19:52:55 +10:00
Sam Potts
c86b824a04 Comment 2016-05-15 18:59:13 +10:00
Sam Potts
21c2276359 Build changes, sprite.svg => plyr.svg 2016-05-15 18:57:21 +10:00
Sam Potts
602944ea4f Fix for bug in v1.6.7 2016-05-14 09:18:04 +10:00
Sam Potts
f4a9ffcec7 Merge branch 'master' of https://github.com/Selz/plyr 2016-05-14 08:57:07 +10:00
Sam Potts
d2e9c61fd7 iOS bug fixes (fixes #213) 2016-05-14 08:56:59 +10:00
Sam Potts
c8cd051a00 Update readme.md 2016-05-14 01:09:20 +10:00
Sam Potts
448c070898 Merge branch 'master' of https://github.com/Selz/plyr
# Conflicts:
#	dist/plyr.css
2016-05-14 00:48:56 +10:00
Sam Potts
7f624ebbb7 Icon tweaks, IE button fix 2016-05-14 00:48:21 +10:00
Sam
4a69ef3874 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	src/less/plyr.less
2016-05-11 22:47:27 +10:00
Sam Potts
31c933af38 Merge pull request #209 from robinpoort/master
Add CSS settings
2016-05-11 22:39:54 +10:00
Robin Poort
00137fe46b Compile css file 2016-05-11 13:46:47 +02:00
Robin Poort
b23a16826e Adding SCSS settings
- Added setting to be able to disable the border-box if you already defined that in your own css
- Added setting to be able to disable touch-action if you already defined that in your own css
- Added setting to choose not to use !important for sr-only class
2016-05-11 13:46:40 +02:00
Robin Poort
2a822d7b45 Adding LESS settings
- Added setting to be able to disable the border-box if you already defined that in your own css
- Added setting to be able to disable touch-action if you already defined that in your own css
- Added setting to choose not to use !important for sr-only class
2016-05-11 13:46:19 +02:00
Sam Potts
cc5b363d66 Version bump 2016-05-11 10:18:34 +10:00
Sam Potts
7e53f01d44 Fix for #206 2016-05-11 10:17:28 +10:00
Sam Potts
d351f9f172 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	src/less/plyr.less
2016-05-10 10:01:29 +10:00
Sam Potts
4d67d68c6b Built CSS 2016-05-10 09:35:45 +10:00
Sam Potts
3f20462943 Restore simplicity to LESS file structure 2016-05-10 09:35:19 +10:00
Sam Potts
ab26525f09 Merge pull request #204 from robinpoort/master
Broken progress bar styling IE10
2016-05-10 09:17:09 +10:00
Robin Poort
e431d7594b Fix broken progress bar styling IE10 2016-05-09 17:47:10 +02:00
Robin Poort
8b75bec3d2 Fix broken progress bar styling IE10 2016-05-09 17:40:14 +02:00
Robin Poort
1a5e56ed46 Fix broken progress bar styling IE10 2016-05-09 17:39:36 +02:00
Sam Potts
3470d5f5e6 Merge branch 'master' into develop
# Conflicts:
#	src/less/plyr.less
2016-05-09 19:11:57 +10:00
Sam Potts
9ff933e532 Merge pull request #202 from robinpoort/master
Removing duplicate selectors
2016-05-09 19:09:23 +10:00
Robin Poort
299dfe4afe Removing duplicate selectors 2016-05-06 12:37:18 +02:00
Robin Poort
6921070688 Removing duplicate selectors 2016-05-06 12:36:14 +02:00
Sam Potts
bb976ccf4b Merge pull request #200 from shakeelmohamed/feature/youtube-onstatuschange-event
Add event for YouTube onStateChange
2016-05-02 07:31:29 +10:00
Shakeel Mohamed
f02cb5635f Add event for YouTube onStateChange 2016-05-01 10:24:25 -07:00
Sam Potts
fad3f41ca7 Prep work for theming 2016-05-01 19:27:53 +10:00
Sam Potts
39a0a38d07 Bug fix for undefined progress bar 2016-05-01 15:04:09 +10:00
Sam Potts
a316514ca1 Minor bug fixes 2016-05-01 13:39:53 +10:00
Sam Potts
3b69f47590 v1.6.2 2016-05-01 12:52:07 +10:00
Sam Potts
8172e2339d Caption change position on controls hidden 2016-05-01 12:49:04 +10:00
Sam Potts
44bb6c077c Fixed merge 2016-05-01 12:00:37 +10:00
Sam Potts
e11a58a841 Bug fixes 2016-05-01 11:30:51 +10:00
Sam
c4e3b5a242 Bug fixes 2016-05-01 00:35:30 +10:00
Sam Potts
f1b44e6da0 Error handling 2016-04-30 19:52:10 +10:00
Sam Potts
aa093b6c42 Merge branch 'pr/196' into develop
# Conflicts:
#	dist/plyr.js
2016-04-30 11:08:42 +10:00
Sam
97870a7cdc Merge branch 'master' of https://github.com/Selz/plyr 2016-04-28 23:35:26 +10:00
Sam
9a6433488f Tooltip bug fixes 2016-04-28 23:35:18 +10:00
Sam Potts
993617f75f Remove badges (broken since GitHub caching changes) 2016-04-28 22:55:47 +10:00
Sam
e3baa43b22 Docs 2016-04-28 22:24:54 +10:00
Sam
7a332f29ea Typo 2016-04-28 22:22:32 +10:00
Sam
14c21422e7 URL fix 2016-04-28 22:21:03 +10:00
Sam
fe411b1ede Screenshot 2016-04-28 22:17:45 +10:00
Sam
4f02e2d6e7 Docs updates, small tweaks 2016-04-28 22:07:35 +10:00
Sam Potts
4719766843 Merge branch 'develop' of github.com:selz/plyr into develop
# Conflicts:
#	dist/plyr.css
2016-04-28 18:35:21 +10:00
Sam Potts
85600ef685 Max width on range progress indicators 2016-04-28 18:33:58 +10:00
Sam Potts
f7edd84125 Bug fixes 2016-04-28 13:57:01 +10:00
Sam Potts
27e3583fbc Merge branch 'develop' of github.com:selz/plyr into develop 2016-04-28 08:36:30 +10:00
Sam Potts
12d1a03bc4 Margins 2016-04-28 08:36:23 +10:00
Sam
d3028b9a03 iconUrl option 2016-04-28 00:14:20 +10:00
Sam Potts
2385291886 Volume fixes, iOS bug fixes 2016-04-27 22:47:03 +10:00
Sam Potts
cb0b22574a Input progress for volume, fixes for playback progress 2016-04-27 22:22:17 +10:00
Sam Potts
4a1adf92e2 Color 2016-04-27 08:46:36 +10:00
Sam Potts
b077bb9f5f Docs tweaks 2016-04-27 00:34:44 +10:00
Sam
68c4b52dfa Mute volume toggle fixes 2016-04-27 00:15:29 +10:00
Sam Potts
81ad9cf6f7 Audio styles, docs tweaks, package updates 2016-04-26 23:06:30 +10:00
Sam
024706f2ff Tab shows controls 2016-04-26 22:24:20 +10:00
Sam
57b3b9e3f6 Audio styles 2016-04-26 21:15:36 +10:00
Sam Potts
6c8d118f83 WIP 2016-04-26 19:14:42 +10:00
Monica Cheung
48399f6364 Merge remote-tracking branch 'org/develop' into develop 2016-04-25 22:43:44 -07:00
Sam
e26694c322 Work on Audio UI 2016-04-25 22:48:40 +10:00
Sam Potts
d41249bd90 WIP 2016-04-25 21:24:07 +10:00
Sam
833d3ac36f Tweaks 2016-04-25 20:05:01 +10:00
Sam Potts
fdaeecbb06 Merge branch 'master' into develop 2016-04-25 19:11:00 +10:00
Sam Potts
70297321c3 Merge branch 'develop' of github.com:selz/plyr into develop
# Conflicts:
#	.gitignore
#	dist/plyr.css
#	dist/plyr.js
#	dist/sprite.svg
#	docs/dist/docs.css
#	docs/dist/docs.js
#	docs/src/less/components/examples.less
#	src/js/plyr.js
#	src/less/plyr.less
#	src/sprite/icon-fast-forward.svg
#	src/sprite/icon-pause.svg
#	src/sprite/icon-play.svg
#	src/sprite/icon-rewind.svg
2016-04-25 19:10:10 +10:00
Sam Potts
a02609c3e3 ignore 2016-04-25 19:07:17 +10:00
Sam Potts
ffebc7b077 UI tweaks 2016-04-25 19:06:55 +10:00
Monica Cheung
47e0800f02 Add support for soundcloud 2016-04-17 20:57:55 -07:00
Sam Potts
c7c7902769 Merge pull request #179 from prince-0203/update-readme-outdated-contents
Update outdated contents in readme.md
2016-04-18 10:25:23 +10:00
Sam Potts
5bb4d70cf7 Merge branch 'master' of github.com:selz/plyr 2016-03-27 18:30:20 +11:00
Sam Potts
67b2f2510b Bug fix for embeds: play not being defined (fixes #185 and #186) 2016-03-27 18:29:58 +11:00
Sam Potts
ba9434b6f2 Merge pull request #184 from iamvlado/patch-1
fix type error
2016-03-20 15:26:25 +11:00
vlado
26469452e1 fix type error 2016-03-19 17:29:15 +02:00
Sam Potts
6ae2655923 Version bump 2016-03-14 22:53:11 +11:00
Sam Potts
815100cff8 Autoplay bug fixes 2016-03-14 22:50:34 +11:00
Sam Potts
33771ef8c0 Merge branch 'master' of github.com:selz/plyr 2016-03-14 22:34:44 +11:00
Sam Potts
b51a1684dc Fix for embed property not being set 2016-03-14 22:34:28 +11:00
Sam Potts
ba9abdc1d3 Update readme.md 2016-03-13 22:45:47 +11:00
Sam Potts
6a8803ec9f Update readme.md 2016-03-13 22:45:27 +11:00
Sam Potts
bcb5b981f9 Update readme.md 2016-03-13 22:44:14 +11:00
Sam Potts
5ea9e59d71 SASS fixes, docs changes (fixes #180), 'ready' event 2016-03-13 21:45:57 +11:00
Sam Potts
01b45e7d97 Merge branch 'master' of github.com:selz/plyr 2016-03-13 21:23:00 +11:00
Sam Potts
c41e5320c8 SASS fixes, Default font stack added 2016-03-13 21:22:51 +11:00
Sam Potts
426c0f5559 Merge pull request #181 from shakeelmohamed/bugfix/youtube-autoplay
Dynamically set YouTube autoplay from config
2016-03-13 18:29:49 +11:00
Shakeel Mohamed
c636f0e69e Dynamically set YouTube autoplay from config
The YouTube autoplay doesn't work without this
change.
2016-03-12 14:05:33 -08:00
prince
58342cfae8 Update outdated contents in readme.md 2016-03-12 14:07:37 +09:00
Sam Potts
193103cb2d Update readme.md 2016-03-07 23:18:56 +11:00
Sam Potts
f9c593d2f9 Update readme.md 2016-03-07 23:16:46 +11:00
Sam Potts
87d174ac2c Bug fixes and native APIs exposed for embeds 2016-03-07 22:28:30 +11:00
Sam Potts
cd83a2670b Cancel requests on source change (Fixes #174) 2016-02-28 12:50:34 +11:00
Sam Potts
1bbc47c64f CustomEvent polyfill (Fixes #172) 2016-02-28 11:22:11 +11:00
Sam Potts
7a1a5830aa Remove version from source 2016-02-25 19:36:14 +11:00
Sam Potts
1ecbec4044 Volume storage fix (Fixes #171) 2016-02-25 19:35:03 +11:00
Sam Potts
ab329b99df Merge branch 'master' of github.com:selz/plyr 2016-02-23 15:11:48 +11:00
Sam Potts
54af43dd75 Docs code 2016-02-23 15:11:35 +11:00
Sam Potts
188a2e72eb Update readme.md 2016-02-21 14:34:49 +11:00
Sam Potts
b7a14be2ac Removed npm log 2016-02-21 14:33:34 +11:00
Sam Potts
c99f20d5d8 Fix for manual captions 2016-02-21 14:28:01 +11:00
Sam Potts
5b968c97f4 v1.5.12 2016-02-21 14:07:17 +11:00
Sam Potts
d538cdcdf6 1.5.12 2016-02-21 14:04:49 +11:00
Sam Potts
cad142fe85 Merge branch 'master' of github.com:selz/plyr
# Conflicts:
#	src/js/plyr.js
2016-02-21 14:04:13 +11:00
Sam Potts
b18ed03384 WIP on captions bug, manual duration option, reset media object 2016-02-21 13:17:30 +11:00
Sam Potts
6a0b3dc823 Merge pull request #168 from gurupras/fix-captions
Fixes for captions
2016-02-21 11:28:15 +11:00
Guru Prasad Srinivasa
402c45ee2b Updated manual caption split pattern
Previously, Plyr was using a fixed pattern of '\n\n' to split
contents into captions. This does not always work as some VTT files
contain '\r\n'. This commit checks for both.
2016-02-16 20:17:10 -05:00
Guru Prasad Srinivasa
67f19166ac Some WebVTT fixes to allow manual captions
WebVTT allows additional parameters along with the line that
contains the start and end times. These were not being filtered
out while attempting to manually display captions.
2016-02-16 19:52:08 -05:00
Sam Potts
32b7b6b886 Merge pull request #167 from ivanvermeyen/patch-1
Allow player control colors to be overridden #158
2016-02-15 11:50:38 +11:00
Sam Potts
96df8fbc85 Update readme.md 2016-02-14 14:04:30 +11:00
Sam Potts
e742527e65 Version bump 2016-02-13 22:23:11 +11:00
Sam Potts
f426af6e9e 1.5.11 2016-02-13 22:19:48 +11:00
Sam Potts
aea86b6124 Merge branch 'master' of github.com:selz/plyr
# Conflicts:
#	dist/plyr.js
2016-02-13 22:19:31 +11:00
Sam Potts
ce51344269 iOS fix (Fixes #166), Edge Progress Tip (Fixes #160), SASS fix (Fixes #158) 2016-02-13 22:18:42 +11:00
Ivan Vermeyen
7d0311fd64 Allow player control colors to be overridden #158 2016-02-12 17:11:07 +01:00
Sam Potts
89e000f669 Update readme.md 2016-02-09 14:53:57 +11:00
Sam Potts
f341f1264d Update readme.md 2016-02-09 14:53:20 +11:00
Sam Potts
c687b867e7 Update readme.md 2016-02-09 14:52:37 +11:00
Sam Potts
4ee31ba661 Update readme.md 2016-02-09 14:40:26 +11:00
Sam Potts
a9126a4c82 Update readme.md 2016-02-05 00:02:24 +11:00
Sam Potts
6b70c4b49a Update readme.md 2016-02-04 14:59:59 +11:00
Sam Potts
d8fb876c81 Update readme.md 2016-02-04 14:58:00 +11:00
Sam Potts
73e6ad610f Merge pull request #156 from mortonfox/patch-1
Fix the svgfixer.js link
2016-02-02 09:35:31 +11:00
Morton Fox
eee7553d09 Fix the svgfixer.js link 2016-02-01 16:14:22 -05:00
Sam Potts
130b5ebedf Update readme.md 2016-01-29 10:25:39 +11:00
Sam Potts
dae5fb9785 Merge pull request #154 from marvinhagemeister/fix_window_usage
Get the proper reference to window on initialization.
2016-01-28 09:19:25 +11:00
Marvin Hagemeister
31a0eb8d14 Get the proper window reference on initialization.
The previous code assumed that `this` points to the browsers
window object, which is not the case when using a module bundler.

So we check for the variable `window` first, before falling back
to `this`.

(taken from jQuery's codebase)
2016-01-27 21:27:58 +01:00
Sam Potts
b8b611fbb6 Merge pull request #152 from marvinhagemeister/fix_commonjs
Swap CommonJS and AMD module check so that CommonJS is checked first
2016-01-27 08:45:10 +11:00
Marvin Hagemeister
a285fcc4ec Check for module.exports as well for CommonJS Modules 2016-01-26 17:05:57 +01:00
Marvin Hagemeister
4fda65c862 Swap CommonJS and AMD module check so that CommonJS is checked first. Fixes Webpack module bundling 2016-01-26 16:53:15 +01:00
Sam Potts
a8cea7b5c9 1.5.10 2016-01-26 22:44:09 +11:00
Sam Potts
01bdcc2b01 Merge pull request #151 from marvinhagemeister/fix_npm
Fix broken npm require/import
2016-01-26 20:44:44 +11:00
Marvin Hagemeister
812d2d33f2 NPM package main must always be the main source file. Fixes broken require/import 2016-01-26 10:21:03 +01:00
Sam Potts
a59073c5ca Update readme.md 2016-01-26 10:16:02 +11:00
Sam Potts
7edc3ccd53 NPM updates and published (fixes #146) 2016-01-26 10:08:19 +11:00
Sam Potts
b217e23880 Npm changes 2016-01-26 09:59:17 +11:00
Sam Potts
053b6c2e3f Merge pull request #150 from marvinhagemeister/remove_global
Remove global preinstall script
2016-01-26 09:33:49 +11:00
Marvin Hagemeister
0d426ca479 Remove global preinstall script. Gulp does not have to be globally installed to build plyr 2016-01-25 16:35:54 +01:00
Sam Potts
a327056789 Seek fixes for touch 2016-01-25 11:25:32 +11:00
Sam Potts
b006b73c69 Fix for control tooltips always showing 2016-01-25 11:02:35 +11:00
Sam Potts
3127cea1b2 SASS fix (fixes #149) 2016-01-25 08:36:53 +11:00
Sam Potts
a965d8a893 Seek tooltip, bug fixes for SASS, fullscreen and icons 2016-01-24 11:25:31 +11:00
Sam Potts
173e651e3f Comment 2016-01-23 12:24:58 +11:00
Sam Potts
fa5cb828c0 Update controls.md 2016-01-21 09:49:00 +11:00
Sam Potts
5978810b7f Update controls.md 2016-01-21 09:48:46 +11:00
Sam Potts
6c251794c8 Merge branch 'master' of github.com:selz/plyr 2016-01-21 09:43:40 +11:00
Sam Potts
76917751e3 Small bug fixes 2016-01-21 09:43:27 +11:00
Sam Potts
e75a9b89b0 Merge pull request #147 from christianpv/patch-3
Update bundles.json - Fix path to sass dir.
2016-01-21 09:06:08 +11:00
Christian Pena
a0fe61011f Update bundles.json - Fix path to sass dir. 2016-01-20 12:40:04 -05:00
Sam Potts
84a1b03d7d Docs update 2016-01-19 17:15:50 +11:00
Sam Potts
b9177e7892 Minor bug fix for clicking video to play/pause after source change 2016-01-19 11:36:30 +11:00
Sam Potts
fd12247a62 Fix for video click 2016-01-19 11:34:04 +11:00
Sam Potts
20a71300a5 Controls 2016-01-19 09:54:23 +11:00
Sam Potts
70c5b24678 Added reference 2016-01-19 09:35:10 +11:00
Sam Potts
a87e87f93c Version bump 2016-01-19 09:32:04 +11:00
Sam Potts
1b54ff0ad3 Listen for durationchange 2016-01-19 09:30:37 +11:00
Sam Potts
3075e1eda2 Docs 2016-01-19 09:22:39 +11:00
Sam Potts
8d1e014a40 Docs 2016-01-19 00:46:00 +11:00
Sam Potts
0c52fe0c7c Added events line 2016-01-19 00:43:22 +11:00
Sam Potts
bb25f8d02a Removed broken links 2016-01-19 00:41:30 +11:00
Sam Potts
42c955c5eb Removed onSetup from docs code 2016-01-19 00:33:22 +11:00
Sam Potts
268223ac52 Version bump 2016-01-19 00:31:28 +11:00
Sam Potts
b81b8c1d31 Event listeners 2016-01-19 00:30:25 +11:00
Sam Potts
5b2a016241 Merge branch 'master' of github.com:selz/plyr 2016-01-18 19:48:20 +11:00
Sam Potts
a665121b52 Types enum 2016-01-18 19:48:14 +11:00
Sam Potts
02d312f2d2 Style tweaks 2016-01-18 18:27:01 +11:00
Sam Potts
c23c150fe9 Merge branch 'master' of https://github.com/Selz/plyr 2016-01-18 17:35:32 +11:00
Sam Potts
2e5bdb338e Tidying up, Vimeo fix 2016-01-18 17:35:18 +11:00
Sam Potts
c51ef05067 Update readme.md 2016-01-18 11:24:31 +11:00
Sam
dbe152a4c1 LESS/SASS variable name spacing and clean up 2016-01-17 19:22:43 +11:00
Sam Potts
3f42e53d95 Don't add video hash 2016-01-17 10:48:26 +11:00
Sam Potts
54b0dc5273 Docs tweak 2016-01-17 10:41:13 +11:00
Sam Potts
d6b67c3388 Docs pushstate for tabs 2016-01-17 10:39:05 +11:00
Sam
a277224ef4 Reverted docs.js changes 2016-01-17 01:29:34 +11:00
Sam
f87a10ae0b Fix for event listeners being duplicated on source change 2016-01-17 01:25:11 +11:00
Sam Potts
f18fb3f26d Update readme.md 2016-01-16 13:51:18 +11:00
Sam Potts
71359a3ff2 Merge branch 'master' of github.com:selz/plyr
# Conflicts:
#	readme.md
2016-01-16 13:48:26 +11:00
Sam Potts
6edc6ac680 Image 2016-01-16 13:48:11 +11:00
Sam Potts
bf2b6c3c96 Update readme.md 2016-01-16 13:46:09 +11:00
Sam Potts
b904e640f7 Docs update 2016-01-16 13:45:41 +11:00
Sam Potts
1ddb4eb60c HTTPS, docs update 2016-01-16 13:20:50 +11:00
Sam Potts
891abd1d4a Final tweaks for v1.5 and IE9 2016-01-16 13:02:04 +11:00
Sam Potts
aed7db34ea Comments 2016-01-15 15:19:20 +11:00
Sam Potts
90608e9e1a Vimeo iOS fix 2016-01-15 15:11:02 +11:00
Sam Potts
70b4b14984 iOS fixes 2016-01-15 15:07:31 +11:00
Sam Potts
9fbbb474db Clean up 2016-01-14 23:50:00 +11:00
Sam Potts
bc7a6ebdde Keyboard nav fixes (seek & focus trap in fullscreen), SASS updates 2016-01-14 21:20:46 +11:00
Sam Potts
353d920e25 Minor tweaks to custom handler stuff 2016-01-14 19:34:09 +11:00
Sam Potts
6110098e97 Merge pull request #141 from gurupras/gurupras-develop
Added new configuration option 'handlers'
2016-01-14 19:21:31 +11:00
Guru Prasad Srinivasa
b5092c338c Added new configuration option 'handlers'
This option allows developers to attach their custom handlers
before internal plyr's handlers. This should enable developers
to have full control over all the buttons including the ability
to stop event propagation if desired.
2016-01-14 03:01:51 -05:00
Sam Potts
cce7e9932e Merge for new source api changes 2016-01-14 09:53:58 +11:00
Sam Potts
e6c30ec137 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.js
#	readme.md
#	src/js/plyr.js
2016-01-14 09:42:36 +11:00
Sam Potts
9bcd0434db Built JS 2016-01-14 09:39:10 +11:00
Sam Potts
debdf112cc Merge pull request #140 from gurupras/gurupras-develop
Updated API function 'plyr.source()' to get media source
2016-01-14 09:35:01 +11:00
Guru Prasad Srinivasa
533bd173b2 Updated API function 'plyr.source()' to get media source
Currently, there is no simple way of acquiring media source.
This commit updates the 'source' API function to allow developers
to acquire the video source regardless of whether the video
is a youtube-embed or HTML5 video.

Future embeds just need their respective URL fetching code added
to this common function.
2016-01-13 17:19:19 -05:00
Sam Potts
e05538e480 Tab focus 2016-01-14 01:19:48 +11:00
Sam Potts
38f554b480 Tidying up 2016-01-14 01:14:22 +11:00
Sam Potts
7d487553b2 Tab focus tweaks 2016-01-14 00:59:18 +11:00
Sam Potts
ca8fd08e81 Use only one index.html for testing locally, fixes for limited controls, larger seek handle 2016-01-14 00:23:57 +11:00
Sam Potts
bc67d969cb Froogaloop fixes (custom version), docs sprite, source api changes 2016-01-13 23:12:16 +11:00
Sam Potts
c449fc0867 Controls bug fix 2016-01-12 22:31:37 +11:00
Sam Potts
18b2d81985 Media paused state for embeds 2016-01-11 08:52:04 +11:00
Sam Potts
533af96c4f Merge pull request #134 from gurupras/gurupras-develop
Fixed embedded Plyr not updating plyr.media.paused
2016-01-11 08:49:53 +11:00
Guru Prasad Srinivasa
be8b4d2735 Fixed embedded Plyr not updating plyr.media.paused 2016-01-10 12:46:56 -05:00
Sam Potts
7d077d543b Fullscreen fixes 2016-01-11 00:07:13 +11:00
Sam Potts
9b09c9c7a0 Work on v1.5
See changelog.md
2016-01-10 21:40:22 +11:00
Sam
592bcc8d7e Prep for v1.5 2016-01-10 15:08:58 +11:00
Sam
30529ee4e4 New vimeo vid 2015-12-13 22:57:06 +11:00
Sam
ee2cdb2c9b Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
#	docs/dist/docs.css
#	docs/dist/docs.js
#	docs/index.html
#	docs/src/js/docs.js
#	docs/src/less/components/icons.less
#	docs/src/less/components/type.less
#	docs/src/less/docs.less
#	gulpfile.js
#	package.json
#	src/js/plyr.js
2015-12-13 22:49:02 +11:00
Sam Potts
1371c1341f Removed Hogan from Docs (Fixes #128) 2015-12-11 10:41:29 +11:00
Sam Potts
05bf08a438 Merge branch 'master' of github.com:selz/plyr 2015-12-11 10:01:12 +11:00
Sam
1e03aa1360 Docs update - removed button counts temporarily 2015-11-26 18:26:26 +11:00
Sam Potts
7463e31f95 Merge pull request #123 from ciceropablo/master
Fix typo
2015-11-17 09:40:23 +11:00
Cícero Pablo
83caa3f55a Fix typo 2015-11-16 20:30:29 -02:00
Sam Potts
787465d626 Merge pull request #122 from DarthUjj/patch-1
Cleanup README a bit
2015-11-09 09:08:12 +11:00
Ujjwal Arora
33357a5992 Cleanup README a bit 2015-11-09 00:06:35 +05:30
Sam Potts
cd2532867c Vimeo mute 2015-10-25 12:13:12 +11:00
Sam Potts
8f80e4fa65 Fragaloop and docs 2015-10-25 12:02:42 +11:00
Sam Potts
125a95e9e1 Audio fullscreen, Tooltip tweaks, Docs 2015-10-25 11:57:52 +11:00
Sam Potts
58f8cdd8c8 Sass updated 2015-10-05 16:38:02 +11:00
Sam Potts
b164a2f3fb Setup improvements, player -> plyr, docs (WIP) 2015-10-05 16:33:26 +11:00
Sam Potts
262c9f9e13 Removed Hogan stuff 2015-10-05 02:01:43 +11:00
Sam Potts
2c4c8c58d5 Docs tweaks 2015-10-05 01:39:55 +11:00
Sam Potts
daec1baebc Source API changes, Vimeo fixes, still WIP 2015-10-04 19:27:30 +11:00
Sam Potts
0674e13bab Icon tweaks, other small tweaks 2015-10-03 10:43:27 +10:00
Sam Potts
aee076dc3b Added autoplay option 2015-10-03 08:49:07 +10:00
Sam Potts
66969f1a65 Fix for multiple YouTube instances (Fixes #114) 2015-09-13 09:56:59 +10:00
Sam Potts
e964c1a298 Docs 2015-09-06 15:34:13 +10:00
Sam Potts
941b4c1c20 Merge 2015-08-27 07:36:59 +10:00
Sam Potts
95e39e7bd7 Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
#	docs/dist/docs.css
#	docs/src/less/components/examples.less
#	src/js/plyr.js
2015-08-27 07:36:17 +10:00
Sam Potts
0785ca6024 Vimeo 2015-08-27 07:30:14 +10:00
Sam Potts
6543fc1e5b Fixed bug with API use on basic supported browsers 2015-08-21 21:36:15 +10:00
Sam Potts
9133247cdf Code cleanup 2015-08-13 21:34:17 +10:00
Sam Potts
bf7f6f40bd Merge pull request #111 from calvintam236/master
Code cleanup
2015-08-13 21:32:10 +10:00
Calvin Tam
43a904917f Fixed equal signs 2015-08-13 01:39:13 -07:00
Calvin Tam
9fe6e5ffcb Converted double quote to single quote 2015-08-13 01:36:20 -07:00
Calvin Tam
a46e421bf6 Fixed syntax; Fixed some JSHint errors (Not escaped character, etc.) 2015-08-13 01:15:57 -07:00
Calvin Tam
20090aee03 Fixed missing semicolons mentioned by JSHint 2015-08-13 00:43:11 -07:00
Calvin Tam
c4ca7fe0d2 Updated tag closing 2015-08-13 00:38:30 -07:00
Calvin Tam
6b41752415 Use defined function instead of hard coding 2015-08-13 00:13:57 -07:00
Calvin Tam
2bc53d12ea Use double quote for html strings 2015-08-12 23:38:39 -07:00
Calvin Tam
2f6dc5279b Removed unnecessary "break"s 2015-08-12 23:13:58 -07:00
Calvin Tam
c8b2867b1f Removed useless spaces 2015-08-12 23:13:13 -07:00
Calvin Tam
e56132ae3b Standardized syntax 2015-08-12 22:58:33 -07:00
Sam Potts
45d4091c20 Merge branch 'master' of github.com:selz/plyr 2015-08-11 22:38:45 +10:00
Sam Potts
60c53a5894 Removed captions being read by screen readers 2015-08-11 22:38:06 +10:00
Sam Potts
032c823d3a Merge pull request #108 from ChristianPV/patch-2
Update plyr.scss - Fix new scss!
2015-08-10 23:31:31 +10:00
khrizpv
66f724a3be Update plyr.scss - Fix new scss!
This is a fix the newly added scss.
2015-08-10 10:03:21 -03:00
Sam Potts
bf0c81b484 Docs 2015-08-09 09:29:33 +10:00
Sam Potts
aa72a17f44 Version bump 2015-08-08 21:02:55 +10:00
Sam Potts
8825e82634 Merge branch 'master' of github.com:selz/plyr 2015-08-08 21:01:39 +10:00
Sam Potts
f700d50dc8 Fix for voiceover 2015-08-08 21:01:06 +10:00
Sam Potts
a585270d21 Update readme.md 2015-08-08 20:38:21 +10:00
Sam Potts
7a23dda294 Typo 2015-08-08 18:13:14 +10:00
Sam Potts
f3c324038f ARIA improvements for caption reading 2015-08-08 15:16:42 +10:00
Sam Potts
34c9bdc84c Readme 2015-08-08 14:37:28 +10:00
Sam Potts
38a206892b YouTube, Captions and Control improvements
- Controls improvements (Fixes #103)
- YouTube bug fixes (Fixes #105)
- Internationalization support (Fixes #101)
- Captions legibility improvements
2015-08-08 14:37:12 +10:00
Sam Potts
12a737a49e Merge branch 'master' of github.com:selz/plyr 2015-08-08 11:14:19 +10:00
Sam Potts
e7946189c6 Icon updates 2015-08-08 11:14:11 +10:00
Sam Potts
850720d8f2 Merge pull request #106 from calvintam236/master
Fixed certain YouTube player issues
2015-08-08 11:13:03 +10:00
Sam Potts
b130a13c8a Merge pull request #107 from ChristianPV/patch-1
Update plyr.scss - Make it work V3!
2015-08-07 11:50:01 +10:00
khrizpv
75c090e8b9 Update plyr.scss - Make it work V3! 2015-08-06 14:21:36 -03:00
Calvin Tam
f983f0771b Revert "Eliminated running try catch when player.type="youtube""
This reverts commit 5fcfd5fa4f.
2015-08-05 20:36:48 -07:00
Calvin Tam
9f1e5a55f4 Disabled YouTube embed player keyboard control to match with plyr's control 2015-08-05 20:33:04 -07:00
Calvin Tam
5fcfd5fa4f Eliminated running try catch when player.type="youtube" 2015-08-05 20:09:05 -07:00
Calvin Tam
e135309670 Fixed youtube video cannot seek before video started with controls 2015-08-05 19:57:24 -07:00
Calvin Tam
e97b616811 Fixed events are not fired in YouTube embed player 2015-08-05 19:55:30 -07:00
Sam Potts
c504ecffe6 Merge pull request #104 from ChristianPV/patch-1
Update plyr.scss - Make it work V2!
2015-08-01 00:35:21 +10:00
khrizpv
9534db823d Update plyr.scss - Make it work V2!
Hi, thanks for accepting my previous pull request. I made this request because the variables control-color and control-color-hover weren't being set inside the mixin so i took them out and it's working now again. I hope you can merge this as it isnt completly working yet and sorry for the delay. Thanks again! :)
2015-07-31 10:59:03 -03:00
Sam Potts
1ba1bec066 Merge branch 'master' of github.com:selz/plyr
# Conflicts:
#	src/sass/plyr.scss
2015-07-31 21:34:07 +10:00
Sam Potts
aad4a720dc Tooltip fix for NVDA 2015-07-31 21:32:12 +10:00
Sam Potts
a978348123 Version bump 2015-07-28 11:31:32 +10:00
Sam Potts
00cf797c20 Restored !default and fullscreen logic in SASS 2015-07-28 11:29:49 +10:00
Sam Potts
6b0f58dab2 Merge pull request #102 from ChristianPV/patch-1
Update plyr.scss - Make it work
2015-07-28 10:13:47 +10:00
khrizpv
04cf5dfda1 Update plyr.scss - Make it work
There were some things that needed to be changed for the sass preprocessor to work. There were some variables declared as @ that need to be declared with the right syntax: $. Also sass evaluation is eager, while less evaluation is _lazy_ that means in sass, mixins should be declared before they are use. I hope you can accept this change as it's currently not working. Thanks!
2015-07-27 13:04:02 -03:00
Sam Potts
fe1989dea1 gulp 2015-07-25 22:06:13 +10:00
Sam Potts
5d19b43888 Tooltip tweak 2015-07-25 21:35:12 +10:00
Sam Potts
06ed345f29 YouTube quality tweak 2015-07-25 21:11:17 +10:00
Sam Potts
e0cd34c996 Fix for omitted kind attribute on <track> (fixes #88) 2015-07-25 20:45:11 +10:00
Sam Potts
06641d5709 Docs 2015-07-25 20:29:54 +10:00
Sam Potts
a0d2d5cd24 Minor tweaks 2015-07-25 20:29:19 +10:00
Sam Potts
e9cdbfb8da Safari fix (fixes #96), YouTube tweaks, docs 2015-07-25 19:51:32 +10:00
Sam Potts
df64fdac9e Tab focus and caption position fixes (fixes #61, fixes #92) 2015-07-25 18:30:47 +10:00
Sam Potts
4dbbbd04cc Merge pull request #99 from ChristianPV/patch-1
Update bower.json - fix sass file name
2015-07-25 10:59:56 +10:00
khrizpv
c9c3ee9014 Update bower.json - fix sass file name
I installed this package with bower and encountered an error while checking for existence of main bower files. I changed the filename to the correct one. Please take a look. Thanks!
2015-07-24 11:51:16 -03:00
Sam Potts
67191c2a75 Merge branch 'master' of github.com:selz/plyr 2015-07-22 11:36:35 +10:00
Sam Potts
8ba4522b3e Docs 2015-07-22 11:36:24 +10:00
Sam Potts
52eaf62b58 Update readme.md 2015-07-21 12:30:41 +10:00
Sam Potts
8d43f412ac Docs CSS 2015-07-21 10:48:31 +10:00
Sam Potts
e9ea90f527 Update readme.md 2015-07-21 10:38:48 +10:00
Sam Potts
5dc0d84300 Version bump 2015-07-21 08:51:44 +10:00
Sam Potts
ec8923ef08 Merge branch 'master' of github.com:selz/plyr 2015-07-21 08:51:25 +10:00
Sam Potts
5a414572f9 Tooltip fix (Fixes #97) 2015-07-21 08:51:14 +10:00
Sam Potts
7f40307b0a Update readme.md 2015-07-20 23:11:11 +10:00
Sam Potts
a12485d10f Update readme.md 2015-07-20 23:09:57 +10:00
Sam Potts
4695bbf483 Merge branch 'master' of github.com:selz/plyr 2015-07-20 23:04:13 +10:00
Sam Potts
20ee77a55e Docs tweak 2015-07-20 23:03:24 +10:00
Sam Potts
78a0ac8674 Update readme.md 2015-07-20 22:51:33 +10:00
Sam Potts
e49c417e54 Version bump 2015-07-20 22:32:29 +10:00
Sam Potts
b39961ec49 Tidying 2015-07-20 22:28:27 +10:00
Sam Potts
8894b4c7b9 Merge branch 'master' into develop
# Conflicts:
#	changelog.md
#	dist/plyr.js
2015-07-20 22:25:31 +10:00
Sam Potts
cdf3deb458 YouTube playback, docs update 2015-07-20 22:24:06 +10:00
Sam Potts
b5fc21239b Version bump 2015-07-20 14:45:32 +10:00
Sam Potts
93cc9edd9a Added icon prefix option for when using default controls 2015-07-20 14:44:51 +10:00
Sam Potts
dcd9ca3a93 Started on source swap 2015-07-12 23:57:36 +10:00
Sam Potts
c202cc1ffb More work on YouTube 2015-07-12 23:41:56 +10:00
Sam Potts
093af22942 More work on YouTube playback 2015-07-12 21:17:56 +10:00
Sam Potts
9d966e41b1 Built 2015-06-27 16:21:54 +10:00
Sam Potts
240aa7aa5f Merge branch 'master' into develop
# Conflicts:
#	dist/plyr.css
#	dist/plyr.js
2015-06-27 16:21:38 +10:00
Sam Potts
654e9cd623 Docs tweaks 2015-06-08 22:12:08 +10:00
Sam Potts
73c3888309 Removed log 2015-06-08 21:50:04 +10:00
Sam Potts
4f0633fdc1 SASS for previous change 2015-06-08 21:46:47 +10:00
Sam Potts
f41854ebe7 Minor tweak to hiding controls in fullscreen 2015-06-08 21:43:49 +10:00
Sam Potts
f398266206 Chrome Canary Fix 2015-06-07 23:20:33 +10:00
Sam Potts
4c17f98520 TogglePlay API method (Fixes #86), Volume border (Fixes #87), Chrome Subs (Fixes #90) 2015-06-07 23:00:26 +10:00
Sam Potts
398815857f Merge branch 'develop' of github.com:selz/plyr into develop
# Conflicts:
#	.gitignore
2015-05-23 19:58:53 +10:00
Sam Potts
4c5020a396 Ignore test video 2015-05-23 19:58:06 +10:00
Sam Potts
df84ce6e90 Docs 2015-05-18 15:11:16 +10:00
Sam Potts
7161378da1 Bug fix 2015-05-18 15:10:40 +10:00
Sam Potts
224b612ae7 Bug fix 2015-05-18 14:46:21 +10:00
Sam Potts
19d7522722 Fixes bug with 1.1.8 volume 2015-05-18 14:43:45 +10:00
Sam Potts
ceace2a678 setVolume() API method improvements (Fixes #83) 2015-05-18 13:50:44 +10:00
Sam Potts
d627454b2a Restore classname on destroy 2015-05-17 17:33:46 +10:00
Sam Potts
7ccbfad6ad New API methods (fixes #77), Fix for non strict mode (fixes #78) 2015-05-17 17:23:09 +10:00
Sam Potts
91f8a158d2 Update index.html 2015-04-19 23:47:46 +10:00
Sam Potts
8925dcde01 Update readme.md 2015-04-19 23:45:25 +10:00
Sam Potts
3d1a586314 Working on YouTube playback 2015-04-15 23:50:03 +10:00
Sam Potts
d04b278802 Merge branch 'master' into develop
# Conflicts:
#	src/js/plyr.js
2015-04-15 21:51:59 +10:00
Sam Potts
7345f656c1 Started on plugin setup 2015-04-15 21:47:50 +10:00
Sam Potts
530abac3a7 Update readme.md 2015-04-15 01:15:05 +10:00
Sam Potts
e702d9a881 Update readme.md 2015-04-15 01:14:36 +10:00
Sam Potts
b0aeccb793 Update readme.md 2015-04-11 11:19:19 +10:00
Sam Potts
43d8d748ce Merge pull request #76 from robinpoort/feature/sass-variables
Make SCSS variables optional
2015-04-11 09:29:04 +10:00
Robin Poort
b43ea5c7d3 adding !default to variables so they are easily overwritable 2015-04-10 15:13:02 +02:00
Sam Potts
f56759222d Update readme.md 2015-04-10 13:38:49 +10:00
Sam Potts
c8b7bb570c Update readme.md 2015-04-10 13:37:55 +10:00
Sam Potts
d536b29550 Update readme.md 2015-04-10 13:36:51 +10:00
Sam Potts
ecbda018c5 Merge branch 'master' of github.com:selz/plyr
# Conflicts:
#	src/js/plyr.js
2015-04-10 07:17:23 +10:00
Sam Potts
5187311ff0 Bug fix for isFullscreen() in Mozilla (Fixes #38) 2015-04-10 07:16:53 +10:00
Sam Potts
d9a94ac7b0 Version bump 2015-04-08 13:42:34 +10:00
Sam Potts
3526e322ef Minor bug fixes 2015-04-06 19:42:26 +10:00
Sam Potts
99cabd545d Fix for generated IDs for controls, UI tweak for audio 2015-04-06 13:25:36 +10:00
Sam Potts
1f7f7b10de Docs tweak 2015-04-06 12:06:34 +10:00
Sam Potts
b2421b592a Merge branch 'master' of github.com:selz/plyr 2015-04-06 11:47:43 +10:00
Sam Potts
5322f4c62f Fullscreen API methods (Fixes #74), onSetup callback 2015-04-06 11:47:23 +10:00
Sam Potts
7ab8647fc8 Merge pull request #75 from franks921/fs-fix-localstorage-volume-settings
fix: use custom localStorage key for volume setting
2015-04-05 21:39:08 +10:00
Frank
50c76f3d7e fix: use custom localStorage key for volume setting 2015-04-05 13:26:17 +02:00
Sam Potts
2f4c56176d Updated screenshot 2015-04-04 12:58:09 +11:00
Sam Potts
7c5f38311b Bug fixes for controls changes 2015-04-04 12:51:24 +11:00
Sam Potts
e568bc9c8d Controls improvements
- Added an option to toggle which controls display
- Better handle missing controls
2015-04-04 12:32:37 +11:00
Sam Potts
c2c4172634 Clarified the option 2015-03-30 21:04:38 +11:00
Sam Potts
73de5b5773 Added displayDuration option, small bug fix
- Using the native VTT cues, sometimes cues would not disappear
2015-03-30 21:03:48 +11:00
Sam Potts
aa1fed0b16 Fixed bug with media longer than 60 minutes (Fixes #69) 2015-03-30 19:17:27 +11:00
Sam Potts
22331ae9f1 Added mention 2015-03-22 23:24:15 +11:00
Sam Potts
8b436276bf Fixed bug with caption toggle, hide controls in fullscreen 2015-03-22 21:26:29 +11:00
Sam Potts
c61db87fd6 API improvements 2015-03-22 11:05:28 +11:00
Sam Potts
388cb4df39 Keyboard accessibility improvements (Fixes #66)
- Enter now works on checkboxes within the controls
2015-03-21 17:00:05 +11:00
Sam Potts
9feffb2972 Version bump 2015-03-15 10:18:56 +11:00
Sam Potts
acea5cdb24 Built js 2015-03-15 10:14:00 +11:00
Sam Potts
55ed577b6a Indentation
Converted to 4 space width tabbing
2015-03-15 10:12:36 +11:00
Sam Potts
20b206a161 Merge pull request #62 from brunowego/patch-1
Updated SASS support
2015-03-15 10:00:00 +11:00
Bruno Wego
9c028a0ecc Updated SASS support 2015-03-14 15:50:32 -03:00
Sam Potts
b677c3d7ad Merge branch 'master' of https://github.com/selz/plyr
Conflicts:
	dist/plyr.js
	src/js/plyr.js
2015-03-10 23:57:36 +11:00
Sam Potts
aa6bc2df2f Fixes for volume control on iOS 2015-03-10 23:54:52 +11:00
Sam Potts
a16579fd21 Fix for repo url 2015-03-09 11:53:26 +11:00
Sam Potts
ae5a816df1 Fix for potential issue with .tagName 2015-03-09 11:51:01 +11:00
Sam Potts
1532f2ab23 Added tooltip option (Fixes #50) 2015-03-09 00:47:38 +11:00
Sam Potts
5370fc5c83 Loading state handling
Fixes #36
2015-03-08 01:24:23 +11:00
Sam Potts
8482a1a320 Updated captions 2015-03-07 19:39:01 +11:00
Sam Potts
f3603ac3fa Size updated 2015-03-07 19:27:11 +11:00
Sam Potts
44fe647a49 Typo 2015-03-07 19:25:25 +11:00
Sam Potts
928a89e599 More formatting 2015-03-07 19:24:41 +11:00
Sam Potts
80d6d806c4 Formatting 2015-03-07 19:21:54 +11:00
Sam Potts
aeecf40191 Slight tweaks 2015-03-07 19:17:57 +11:00
Sam Potts
f368ed572d source(), poster() and supports() API methods 2015-03-07 19:12:56 +11:00
Sam Potts
5291bf616e More work on source change 2015-03-07 12:24:07 +11:00
Sam Potts
a00407a475 Removed extra log 2015-03-06 17:47:08 +11:00
Sam Potts
4f47ec49b1 Work on source update and caption fixes 2015-03-06 17:46:06 +11:00
Sam Potts
c48afb7880 Merge remote-tracking branch 'origin/master' into develop 2015-03-06 12:21:51 +11:00
Sam Potts
5d3fb359b8 Note about demo code 2015-03-06 12:20:47 +11:00
Sam Potts
0227dfa7d8 Working on source() api method 2015-03-06 01:51:12 +11:00
Sam Potts
b9915b4b94 Removed notes 2015-03-06 01:50:37 +11:00
Sam Potts
f4c1313c19 Updated screenshot 2015-03-05 23:36:45 +11:00
Sam Potts
7681d63876 Removed progress transition as it feels laggy 2015-03-05 23:27:53 +11:00
Sam Potts
3bed21bd95 Version bump 2015-03-05 22:47:49 +11:00
Sam Potts
99cdfd60a1 Merge pull request #55 from Selz/develop
Seek improvements
2015-03-05 22:42:46 +11:00
Sam Potts
c6e5937deb Seeking improvements 2015-03-05 22:38:25 +11:00
Sam Potts
4404e999eb Merge branch 'develop' of github.com:selz/plyr into develop 2015-03-05 20:08:53 +11:00
Sam Potts
3684024a58 Merge branch 'develop' of github.com:selz/plyr into develop
Conflicts:
	.gitignore
2015-03-05 20:08:26 +11:00
Sam Potts
1903b1bcdf Seeking (still work in progress) 2015-03-05 18:36:18 +11:00
Sam Potts
9644833d26 Ignore 2015-03-05 00:45:19 +11:00
Sam Potts
93e3f7cdd9 WIP on better seeking 2015-03-05 00:41:42 +11:00
Sam Potts
617ae146c1 SASS updated for icon changes 2015-03-04 21:44:41 +11:00
Sam Potts
3459387f04 Updated icons to make them more obvious 2015-03-04 21:28:25 +11:00
Sam Potts
4d483bf66c Bug fixes and improvements 2015-03-04 08:08:38 +11:00
Sam Potts
9e65b67bc1 Merge pull request #41 from pborreli/typos
Fixed typos
2015-03-04 07:35:48 +11:00
Pascal Borreli
722b153fcd Fixed typos 2015-03-03 14:04:27 +00:00
Sam Potts
27a0ec9424 Open docs site on publish 2015-03-03 19:57:46 +11:00
Sam Potts
6520a466f3 Typo fix 2015-03-03 17:26:48 +11:00
Sam Potts
698d7289af Copy amends 2015-03-03 17:26:03 +11:00
Sam Potts
11063a8924 Fixing the linked image 2015-03-03 17:19:10 +11:00
Sam Potts
1071ef5bf9 Added screenshot 2015-03-03 17:16:59 +11:00
Sam Potts
28caa00c3f Docs tweaks 2015-03-03 00:50:50 +11:00
Sam Potts
894ac8088d Updated gulp to version assets correctly 2015-03-03 00:14:31 +11:00
Sam Potts
148481eccc Included SSL CDN hosting 2015-03-03 00:11:01 +11:00
Sam Potts
26bd4d0833 Fix for fullscreen issues on Firefox
Fixes #38
2015-03-02 20:16:44 +11:00
Sam Potts
b6d5ba43ec Merge branch 'master' of github.com:selz/plyr
Conflicts:
	.gitignore
2015-03-02 19:50:56 +11:00
Sam Potts
6cbcfd75d1 Ignore 2015-03-02 19:48:27 +11:00
Sam Potts
ce39369d84 Fixed domain check 2015-03-02 01:32:30 +11:00
Sam Potts
e73eb87c7e Fixed domain check 2015-03-02 01:31:31 +11:00
Sam Potts
daf2cf4b07 Merge branch 'develop' 2015-03-02 01:09:35 +11:00
Sam Potts
beba315ec5 Ignore aws 2015-03-02 01:09:26 +11:00
Sam Potts
880152d0a0 Added CDN references 2015-03-02 01:08:12 +11:00
Sam Potts
4314853640 Publishing to AWS 2015-03-01 23:23:08 +11:00
Sam Potts
dc10139f80 v1.0.17
Fixes #4
2015-03-01 20:34:46 +11:00
Sam Potts
05a97500aa Seperated docs, included SASS 2015-03-01 20:27:35 +11:00
Sam Potts
eb630ab551 Merge pull request #7 from brunowego/patch-1
Add sass support
2015-03-01 19:09:43 +11:00
Sam Potts
30d6a0cd5f Aria tidy up 2015-02-28 17:00:40 +11:00
Sam Potts
b2ffd7d3ca Fixed icon references 2015-02-28 13:32:19 +11:00
Sam Potts
245a5ef3d7 Fixed syntax highlighting 2015-02-28 12:48:33 +11:00
Sam Potts
5d858344f4 Typos 2015-02-28 12:47:27 +11:00
Sam Potts
fea7ed96b3 Controls HTML docs 2015-02-28 12:44:21 +11:00
Sam Potts
fdc0197433 Fixed broken link 2015-02-28 12:40:21 +11:00
Sam Potts
044bcb359e Only output GA on plyr.io domain 2015-02-28 12:29:53 +11:00
Sam Potts
18dfc17439 Version bump 2015-02-28 12:09:01 +11:00
Sam Potts
35ac236a00 Updates to docs, fix for seek time in controls 2015-02-28 12:07:21 +11:00
Sam Potts
dd17100a53 Small improvements, docs updated 2015-02-28 11:18:24 +11:00
Sam Potts
f8b4622093 Fix for Bootstrap compatibility
Fixes #6
2015-02-28 10:43:42 +11:00
Sam Potts
1216968c60 Minor tweaks 2015-02-28 01:17:56 +11:00
Sam Potts
1d2bd227f1 Small tweak to play(), pause() 2015-02-28 00:45:56 +11:00
Sam Potts
6cec6b2e16 Docs for 1.0.12 2015-02-28 00:40:36 +11:00
Sam Potts
98bc9b0c4b Handle native events
Fixes #34
2015-02-28 00:36:28 +11:00
Sam Potts
a637949e84 Added link to Selz 2015-02-27 14:52:57 +11:00
Sam Potts
d784669699 Updated docs/examples to use new CDN 2015-02-27 12:19:41 +11:00
Sam Potts
ba340172ee Readme updates, code formatted using spaces 2015-02-26 14:32:18 +11:00
Bruno Batista
bb193ff152 Add sass support 2015-02-25 21:24:39 -03:00
Sam Potts
55b085c4d0 Bug fixes for fullscreen mode 2015-02-24 15:44:56 +11:00
Sam Potts
dd72a973d6 Docs fix 2015-02-24 12:39:22 +11:00
Sam Potts
1b8b5d6ee4 Tidying up, bower changes
- Folder tidy up
- Bower updated to include source files
- Upgraded to svgstore 5.0.0
2015-02-24 12:37:23 +11:00
Sam Potts
c105063ad9 Update license.md 2015-02-22 22:08:03 +11:00
Sam Potts
ff43701e97 Readme update 2015-02-22 10:34:20 +11:00
Sam Potts
f477fdf9e2 Minor changes 2015-02-22 10:19:47 +11:00
Sam Potts
49038e3ca9 Progress for buffer, Safari 8 fix, validating 'html' option 2015-02-22 10:17:39 +11:00
189 changed files with 17846 additions and 4004 deletions

10
.editorconfig Normal file
View File

@@ -0,0 +1,10 @@
# See editorconfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

40
.eslintrc.json Normal file
View File

@@ -0,0 +1,40 @@
{
"parser": "babel-eslint",
"extends": ["airbnb-base", "prettier"],
"env": {
"browser": true,
"es6": true
},
"globals": { "Plyr": false, "jQuery": false },
"rules": {
"no-const-assign": 1,
"no-this-before-super": 1,
"no-undef": 1,
"no-unreachable": 1,
"no-unused-vars": 1,
"constructor-super": 1,
"valid-typeof": 1,
"indent": [2, 4, { "SwitchCase": 1 }],
"quotes": [2, "single", "avoid-escape"],
"semi": [2, "always"],
"eqeqeq": [2, "always"],
"one-var": [2, "never"],
"comma-dangle": [2, "always-multiline"],
"no-restricted-globals": [
"error",
{
"name": "event",
"message": "Use local parameter instead."
},
{
"name": "error",
"message": "Use local parameter instead."
}
],
"array-bracket-newline": [2, { "minItems": 2 }],
"array-element-newline": [2, { "minItems": 2 }]
},
"parserOptions": {
"sourceType": "module"
}
}

17
.github/issue_template.md vendored Normal file
View File

@@ -0,0 +1,17 @@
<!---
Please use this issue template as it makes replicating and fixing the issue easier!
--->
### Expected behaviour
### Actual behaviour
### Environment
- Browser:
- Version:
- Operating System:
- Version:
### Steps to reproduce
-

8
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,8 @@
### Link to related issue (if applicable)
### Sumary of proposed changes
### Task list
- [ ] Tested on [supported browsers](https://github.com/sampotts/plyr#browser-support)
- [ ] Gulp build completed

11
.gitignore vendored
View File

@@ -1,4 +1,11 @@
node_modules
*.sublime-project
*.sublime-workspace
.DS_Store
aws.json
*.mp4
!dist/blank.mp4
index-*.html
npm-debug.log
*.webm
/package-lock.json
.idea/

View File

View File

@@ -1,56 +0,0 @@
{
// Settings
"passfail" : false, // Stop on first error.
"maxerr" : 100, // Maximum error before stopping.
// Predefined globals whom JSHint will ignore.
"browser" : true, // Standard browser globals e.g. `window`, `document`.
"node" : false,
"rhino" : false,
"couch" : false,
"wsh" : true, // Windows Scripting Host.
"jquery" : true,
"predef" : [ "jQuery", "$" ],
// Development.
"debug" : false, // Allow debugger statements e.g. browser breakpoints.
"devel" : true, // Allow developments statements e.g. `console.log();`.
// ECMAScript 5.
"strict" : false, // Require `use strict` pragma in every file.
"globalstrict" : false, // Allow global "use strict" (also enables 'strict').
// The Good Parts.
"asi" : true, // Tolerate Automatic Semicolon Insertion (no semicolons).
"laxbreak" : true, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons.
"bitwise" : false, // Prohibit bitwise operators (&, |, ^, etc.).
"boss" : false, // Tolerate assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments.
"curly" : true, // Require {} for every new block or scope.
"eqeqeq" : false, // Require triple equals i.e. `===`.
"eqnull" : false, // Tolerate use of `== null`.
"evil" : false, // Tolerate use of `eval`.
"expr" : false, // Tolerate `ExpressionStatement` as Programs.
"forin" : false, // Tolerate `for in` loops without `hasOwnPrototype`.
"immed" : true, // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );`
"latedef" : false, // Prohipit variable use before definition.
"loopfunc" : true, // Allow functions to be defined within loops.
"noarg" : true, // Prohibit use of `arguments.caller` and `arguments.callee`.
"regexp" : true, // Prohibit `.` and `[^...]` in regular expressions.
"regexdash" : false, // Tolerate unescaped last dash i.e. `[-...]`.
"scripturl" : true, // Tolerate script-targeted URLs.
"shadow" : false, // Allows re-define variables later in code e.g. `var x=1; x=2;`.
"supernew" : false, // Tolerate `new function () { ... };` and `new Object;`.
"undef" : true, // Require all non-global variables be declared before they are used.
// Personal styling preferences.
"newcap" : true, // Require capitalization of all constructor functions e.g. `new F()`.
"noempty" : true, // Prohibit use of empty blocks.
"nonew" : true, // Prohibit use of constructors for side-effects.
"nomen" : true, // Prohibit use of initial or trailing underbars in names.
"onevar" : false, // Allow only one `var` statement per function.
"plusplus" : false, // Prohibit use of `++` & `--`.
"sub" : false, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`.
"trailing" : true, // Prohibit trailing whitespaces.
"white" : false, // Check against strict whitespace and indentation rules.
"indent" : 2 // Specify indentation spacing
}

7
.prettierrc Normal file
View File

@@ -0,0 +1,7 @@
{
"useTabs": false,
"tabWidth": 4,
"printWidth": 160,
"singleQuote": true,
"trailingComma": "all"
}

24
.stylelintrc.json Normal file
View File

@@ -0,0 +1,24 @@
{
"plugins": ["stylelint-selector-bem-pattern", "stylelint-scss"],
"extends": ["stylelint-config-sass-guidelines", "stylelint-config-prettier"],
"rules": {
"selector-class-pattern": null,
"selector-no-qualifying-type": [
true,
{
"ignore": ["attribute", "class"]
}
],
"indentation": 4,
"string-quotes": "single",
"max-nesting-depth": 2,
"plugin/selector-bem-pattern": {
"preset": "bem",
"componentName": "(([a-z0-9]+(?!-$)-?)+)",
"componentSelectors": {
"initial": "\\.{componentName}(((__|--)(([a-z0-9\\[\\]'=]+(?!-$)-?)+))+)?$"
},
"ignoreSelectors": [".*\\.has-.*", ".*\\.is-.*"]
}
}
}

12
.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,12 @@
{
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": [
// Extension identifier format: ${publisher}.${name}. Example: vscode.csharp
"dbaeumer.vscode-eslint",
"wix.vscode-import-cost",
"esbenp.prettier-vscode",
"shinnn.stylelint",
"wayou.vscode-todo-highlight"
]
}

1
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1 @@
{}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M9.016 3c2.748 0 4.984 2.243 4.984 5s-2.236 5-4.97 5l-0.060-0.004c-0.055-0.004-0.11-0.007-0.165-0.010l-0.336-0.014-3.665 1.098 0.629-2.483-0.517-0.747c-0.58-0.839-0.886-1.822-0.886-2.842 0-2.757 2.236-5 4.984-5zM9.016 1c-3.857 0-6.984 3.134-6.984 7 0 1.479 0.46 2.848 1.241 3.978l-1.272 5.022 6.722-2.015c0.098 0.004 0.194 0.015 0.293 0.015 3.857 0 6.984-3.134 6.984-7s-3.127-7-6.984-7v0z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 726 B

View File

@@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>collapse</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1">
<g id="collapse" sketch:type="MSLayerGroup" transform="translate(-1.000000, -1.000000)">
<path d="M15.00325,9.01 L15.00325,5.377 L16.29625,6.694 C16.68825,7.082 17.32125,7.082 17.71325,6.694 C18.10525,6.306 18.10425,5.678 17.71325,5.291 L14.74625,2.291 C14.55825,2.105 14.30425,2 14.03725,2 C14.02625,2 14.01425,2 14.00325,2.001 C13.99225,2.002 13.98025,2 13.96925,2 C13.70325,2 13.44825,2.105 13.26025,2.291 L10.29325,5.291 C9.90225,5.679 9.90225,6.307 10.29325,6.694 C10.68425,7.081 11.31825,7.082 11.71025,6.694 L13.00425,5.377 L13.00425,9.01 C13.00425,9.557 13.44725,10 13.99425,10 L14.01225,10 C14.55925,10 15.00225,9.557 15.00225,9.01 L15.00325,9.01 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(14.003438, 6.000000) rotate(-135.000000) translate(-14.003438, -6.000000) "></path>
<path d="M7.00668756,13.377 L8.29968756,14.694 C8.69168756,15.082 9.32468756,15.082 9.71668756,14.694 C10.1086876,14.306 10.1076876,13.678 9.71668756,13.291 L6.74968756,10.291 C6.56168756,10.105 6.30768756,10 6.04068756,10 C6.02968756,10 6.01768756,10 6.00668756,10.001 C5.99568756,10.002 5.98368756,10 5.97268756,10 C5.70668756,10 5.45168756,10.105 5.26368756,10.291 L2.29668756,13.291 C1.90568756,13.679 1.90568756,14.307 2.29668756,14.694 C2.68768756,15.081 3.32168756,15.082 3.71368756,14.694 L5.00768756,13.377 L5.00768756,17.01 C5.00768756,17.557 5.45068756,18 5.99768756,18 C6.56268756,18 7.00568756,17.557 7.00568756,17.01 L7.00668756,13.377 Z" id="Shape-2" sketch:type="MSShapeGroup" transform="translate(6.006875, 14.000000) rotate(45.000000) translate(-6.006875, -14.000000) "></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>expand</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" sketch:type="MSPage">
<g id="expand" sketch:type="MSLayerGroup" transform="translate(-1.000000, -1.000000)">
<path d="M7.00325,17.01 L7.00325,13.377 L8.29625,14.694 C8.68825,15.082 9.32125,15.082 9.71325,14.694 C10.10525,14.306 10.10425,13.678 9.71325,13.291 L6.74625,10.291 C6.55825,10.105 6.30425,10 6.03725,10 C6.02625,10 6.01425,10 6.00325,10.001 C5.99225,10.002 5.98025,10 5.96925,10 C5.70325,10 5.44825,10.105 5.26025,10.291 L2.29325,13.291 C1.90225,13.679 1.90225,14.307 2.29325,14.694 C2.68425,15.081 3.31825,15.082 3.71025,14.694 L5.00425,13.377 L5.00425,17.01 C5.00425,17.557 5.44725,18 5.99425,18 L6.01225,18 C6.55925,18 7.00225,17.557 7.00225,17.01 L7.00325,17.01 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(6.003438, 14.000000) rotate(-135.000000) translate(-6.003438, -14.000000) "></path>
<path d="M15.0066876,5.377 L16.2996876,6.694 C16.6916876,7.082 17.3246876,7.082 17.7166876,6.694 C18.1086876,6.306 18.1076876,5.678 17.7166876,5.291 L14.7496876,2.291 C14.5616876,2.105 14.3076876,2 14.0406876,2 C14.0296876,2 14.0176876,2 14.0066876,2.001 C13.9956876,2.002 13.9836876,2 13.9726876,2 C13.7066876,2 13.4516876,2.105 13.2636876,2.291 L10.2966876,5.291 C9.90568756,5.679 9.90568756,6.307 10.2966876,6.694 C10.6876876,7.081 11.3216876,7.082 11.7136876,6.694 L13.0076876,5.377 L13.0076876,9.01 C13.0076876,9.557 13.4506876,10 13.9976876,10 C14.5626876,10 15.0056876,9.557 15.0056876,9.01 L15.0066876,5.377 Z" id="Shape-2" sketch:type="MSShapeGroup" transform="translate(14.006875, 6.000000) rotate(45.000000) translate(-14.006875, -6.000000) "></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M17.569 8.246l-10.569-6.246c-0.552 0-1 0.448-1 1v1.954l-5-2.954c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1l5-2.955v1.955c0 0.552 0.448 1 1 1l10.569-6.246c0.267-0.158 0.431-0.444 0.431-0.754s-0.164-0.597-0.431-0.754zM6 10.722l-4 2.364v-8.172l4 2.364v3.444zM8 13.086v-8.172l6.915 4.086-6.915 4.086z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 635 B

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>muted</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" sketch:type="MSPage">
<g id="sound" sketch:type="MSLayerGroup" transform="translate(0.000000, 2.000000)">
<path d="M9.214,0 C9.103,0 8.989,0.032 8.88,0.101 L4.832,2.911 C4.749,2.969 4.65,3 4.549,3 L0.996,3 C0.446,3 1.33226763e-15,3.448 1.33226763e-15,4 L1.33226763e-15,10 C1.33226763e-15,10.552 0.446,11 0.996,11 L4.549,11 C4.651,11 4.749,11.031 4.832,11.089 L8.88,13.899 C8.989,13.968 9.103,14 9.214,14 C9.606,14 9.961,13.6 9.961,13.051 L9.961,0.95 C9.961,0.4 9.606,0.001 9.214,0.001 L9.214,0 Z M7.969,10.834 L5.582,9.177 C5.416,9.062 5.218,8.999 5.016,8.999 L2.491,8.999 C2.216,8.999 1.993,8.775 1.993,8.499 L1.993,5.499 C1.993,5.223 2.216,4.999 2.491,4.999 L5.016,4.999 C5.218,4.999 5.416,4.937 5.582,4.821 L7.969,3.164 L7.969,10.833 L7.969,10.834 Z" id="Shape" sketch:type="MSShapeGroup"></path>
<path d="M14.934,6.799 C14.848,5.051 13.42,3.808 12.427,3.15 C11.957,2.838 11.333,3.028 11.102,3.558 L11.064,3.644 C10.876,4.075 11.019,4.583 11.4,4.838 C12.106,5.311 12.986,6.085 13.024,6.903 C13.056,7.579 12.471,8.371 11.361,9.173 C10.963,9.461 10.832,10.012 11.076,10.448 L11.118,10.523 C11.384,10.998 11.984,11.147 12.418,10.835 C14.158,9.584 15.004,8.229 14.934,6.798 L14.934,6.799 Z" id="Shape" sketch:type="MSShapeGroup"></path>
<path d="M17.934,6.799 C17.848,5.051 16.42,3.808 15.427,3.15 C14.957,2.838 14.333,3.028 14.102,3.558 L14.064,3.644 C13.876,4.075 14.019,4.583 14.4,4.838 C15.106,5.311 15.986,6.085 16.024,6.903 C16.056,7.579 15.471,8.371 14.361,9.173 C13.963,9.461 13.832,10.012 14.076,10.448 L14.118,10.523 C14.384,10.998 14.984,11.147 15.418,10.835 C17.158,9.584 18.004,8.229 17.934,6.798 L17.934,6.799 Z" id="Shape-2" sketch:type="MSShapeGroup" transform="translate(15.945467, 6.999165) rotate(-180.000000) translate(-15.945467, -6.999165) "></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>pause</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" sketch:type="MSPage">
<g id="pause" sketch:type="MSLayerGroup" transform="translate(2.000000, 2.000000)">
<path d="M0,2 L0,12 C5.24848613e-17,14 2,14 2,14 L4,14 C4,14 6,14 6,12 C6,11.786438 6,11.572876 6,11 L6,2 C6,3.17446247e-09 4,0 4,0 L2,0 C2,0 0,0 0,2 Z M2,2 L4,2 L4,12 L2,12 L2,2 Z" id="Path-1" sketch:type="MSShapeGroup"></path>
<path d="M8,2 L8,12 C8,14 10,14 10,14 L12,14 C12,14 14,14 14,12 C14,11.786438 14,11.572876 14,11 L14,2 C14,3.17446247e-09 12,0 12,0 L10,0 C10,0 8,0 8,2 Z M10,2 L12,2 L12,12 L10,12 L10,2 Z" id="Path-2" sketch:type="MSShapeGroup"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M5 4.914l6.915 4.086-6.915 4.086v-8.172zM4 2c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1l10.569-6.246c0.267-0.158 0.431-0.444 0.431-0.754s-0.164-0.597-0.431-0.754l-10.569-6.246z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 515 B

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M8.013 14.006h-0.822c-2.372-0.388-4.187-2.453-4.187-4.934 0-0.831 0.213-1.609 0.574-2.299l0.613 0.85c0.446 0.618 1.409 0.446 1.614-0.289l1.162-4.179c0.162-0.58-0.275-1.155-0.877-1.154l-4.174 0.006c-0.741 0.001-1.17 0.841-0.736 1.443l1.128 1.564c-0.817 1.145-1.302 2.544-1.302 4.059 0 3.499 2.566 6.399 5.918 6.917 0.091 0.014 0.18 0.010 0.267-0.001v0.012h0.822c0.545 0 0.987-0.442 0.987-0.987v-0.020c0-0.545-0.442-0.987-0.987-0.987z"></path>
<path d="M16.82 14.551l-1.129-1.564c0.818-1.145 1.302-2.544 1.302-4.059 0-3.499-2.566-6.399-5.918-6.918-0.091-0.014-0.18-0.010-0.267 0.001v-0.013h-0.822c-0.545 0-0.986 0.442-0.986 0.987v0.020c0 0.546 0.442 0.988 0.986 0.988h0.822c2.372 0.388 4.187 2.453 4.187 4.934 0 0.831-0.213 1.609-0.573 2.299l-0.614-0.85c-0.446-0.618-1.409-0.446-1.613 0.289l-1.163 4.179c-0.161 0.581 0.275 1.155 0.878 1.154l4.174-0.006c0.742-0.001 1.17-0.842 0.736-1.443z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="18px" height="21px" viewBox="0 0 18 21" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>rewind</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" sketch:type="MSPage">
<path d="M17.569,9.246 L7,3 C6.448,3 6,3.448 6,4 L6,5.954 L1,3 C0.448,3 0,3.448 0,4 L0,16 C0,16.552 0.448,17 1,17 L6,14.045 L6,16 C6,16.552 6.448,17 7,17 L17.569,10.754 C17.836,10.596 18,10.31 18,10 C18,9.69 17.836,9.403 17.569,9.246 L17.569,9.246 Z M6,11.722 L2,14.086 L2,5.914 L6,8.278 L6,11.722 L6,11.722 Z M8,14.086 L8,5.914 L14.915,10 L8,14.086 L8,14.086 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(9.000000, 10.000000) rotate(-180.000000) translate(-9.000000, -10.000000) "></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1021 B

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M10.214 2c-0.111 0-0.225 0.032-0.334 0.101l-4.048 2.81c-0.083 0.058-0.182 0.089-0.283 0.089h-3.553c-0.55 0-0.996 0.448-0.996 1v6c0 0.552 0.446 1 0.996 1h3.553c0.102 0 0.2 0.031 0.283 0.089l4.048 2.81c0.109 0.069 0.223 0.101 0.334 0.101 0.392 0 0.747-0.4 0.747-0.949v-12.101c0-0.55-0.355-0.949-0.747-0.949zM8.969 12.834l-2.387-1.657c-0.166-0.115-0.364-0.178-0.566-0.178h-2.525c-0.275 0-0.498-0.224-0.498-0.5v-3c0-0.276 0.223-0.5 0.498-0.5h2.525c0.202 0 0.4-0.062 0.566-0.178l2.387-1.657v7.669z"></path>
<path d="M16.934 8.799c-0.086-1.748-1.514-2.991-2.507-3.649-0.47-0.312-1.094-0.122-1.325 0.408l-0.038 0.086c-0.188 0.431-0.045 0.939 0.336 1.194 0.706 0.473 1.586 1.247 1.624 2.065 0.032 0.676-0.553 1.468-1.663 2.27-0.398 0.288-0.529 0.839-0.285 1.275l0.042 0.075c0.266 0.475 0.866 0.624 1.3 0.312 1.74-1.251 2.586-2.606 2.516-4.037z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,15 +0,0 @@
// ==========================================================================
// Docs example
// ==========================================================================
/*global plyr, templates */
// Setup the player
plyr.setup({
debug: true,
title: "Video demo",
html: templates.controls.render({}),
captions: {
defaultActive: true
}
});

View File

@@ -1,802 +0,0 @@
/*!
* Copyright 2011 Twitter, Inc.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// A wrapper for compatibility with Mustache.js, quirks and all
var Hogan = {};
(function (Hogan) {
Hogan.Template = function (codeObj, text, compiler, options) {
codeObj = codeObj || {};
this.r = codeObj.code || this.r;
this.c = compiler;
this.options = options || {};
this.text = text || '';
this.partials = codeObj.partials || {};
this.subs = codeObj.subs || {};
this.buf = '';
}
Hogan.Template.prototype = {
// render: replaced by generated code.
r: function (context, partials, indent) { return ''; },
// variable escaping
v: hoganEscape,
// triple stache
t: coerceToString,
render: function render(context, partials, indent) {
return this.ri([context], partials || {}, indent);
},
// render internal -- a hook for overrides that catches partials too
ri: function (context, partials, indent) {
return this.r(context, partials, indent);
},
// ensurePartial
ep: function(symbol, partials) {
var partial = this.partials[symbol];
// check to see that if we've instantiated this partial before
var template = partials[partial.name];
if (partial.instance && partial.base == template) {
return partial.instance;
}
if (typeof template == 'string') {
if (!this.c) {
throw new Error("No compiler available.");
}
template = this.c.compile(template, this.options);
}
if (!template) {
return null;
}
// We use this to check whether the partials dictionary has changed
this.partials[symbol].base = template;
if (partial.subs) {
// Make sure we consider parent template now
if (!partials.stackText) partials.stackText = {};
for (key in partial.subs) {
if (!partials.stackText[key]) {
partials.stackText[key] = (this.activeSub !== undefined && partials.stackText[this.activeSub]) ? partials.stackText[this.activeSub] : this.text;
}
}
template = createSpecializedPartial(template, partial.subs, partial.partials,
this.stackSubs, this.stackPartials, partials.stackText);
}
this.partials[symbol].instance = template;
return template;
},
// tries to find a partial in the current scope and render it
rp: function(symbol, context, partials, indent) {
var partial = this.ep(symbol, partials);
if (!partial) {
return '';
}
return partial.ri(context, partials, indent);
},
// render a section
rs: function(context, partials, section) {
var tail = context[context.length - 1];
if (!isArray(tail)) {
section(context, partials, this);
return;
}
for (var i = 0; i < tail.length; i++) {
context.push(tail[i]);
section(context, partials, this);
context.pop();
}
},
// maybe start a section
s: function(val, ctx, partials, inverted, start, end, tags) {
var pass;
if (isArray(val) && val.length === 0) {
return false;
}
if (typeof val == 'function') {
val = this.ms(val, ctx, partials, inverted, start, end, tags);
}
pass = !!val;
if (!inverted && pass && ctx) {
ctx.push((typeof val == 'object') ? val : ctx[ctx.length - 1]);
}
return pass;
},
// find values with dotted names
d: function(key, ctx, partials, returnFound) {
var found,
names = key.split('.'),
val = this.f(names[0], ctx, partials, returnFound),
doModelGet = this.options.modelGet,
cx = null;
if (key === '.' && isArray(ctx[ctx.length - 2])) {
val = ctx[ctx.length - 1];
} else {
for (var i = 1; i < names.length; i++) {
found = findInScope(names[i], val, doModelGet);
if (found !== undefined) {
cx = val;
val = found;
} else {
val = '';
}
}
}
if (returnFound && !val) {
return false;
}
if (!returnFound && typeof val == 'function') {
ctx.push(cx);
val = this.mv(val, ctx, partials);
ctx.pop();
}
return val;
},
// find values with normal names
f: function(key, ctx, partials, returnFound) {
var val = false,
v = null,
found = false,
doModelGet = this.options.modelGet;
for (var i = ctx.length - 1; i >= 0; i--) {
v = ctx[i];
val = findInScope(key, v, doModelGet);
if (val !== undefined) {
found = true;
break;
}
}
if (!found) {
return (returnFound) ? false : "";
}
if (!returnFound && typeof val == 'function') {
val = this.mv(val, ctx, partials);
}
return val;
},
// higher order templates
ls: function(func, cx, partials, text, tags) {
var oldTags = this.options.delimiters;
this.options.delimiters = tags;
this.b(this.ct(coerceToString(func.call(cx, text)), cx, partials));
this.options.delimiters = oldTags;
return false;
},
// compile text
ct: function(text, cx, partials) {
if (this.options.disableLambda) {
throw new Error('Lambda features disabled.');
}
return this.c.compile(text, this.options).render(cx, partials);
},
// template result buffering
b: function(s) { this.buf += s; },
fl: function() { var r = this.buf; this.buf = ''; return r; },
// method replace section
ms: function(func, ctx, partials, inverted, start, end, tags) {
var textSource,
cx = ctx[ctx.length - 1],
result = func.call(cx);
if (typeof result == 'function') {
if (inverted) {
return true;
} else {
textSource = (this.activeSub && this.subsText && this.subsText[this.activeSub]) ? this.subsText[this.activeSub] : this.text;
return this.ls(result, cx, partials, textSource.substring(start, end), tags);
}
}
return result;
},
// method replace variable
mv: function(func, ctx, partials) {
var cx = ctx[ctx.length - 1];
var result = func.call(cx);
if (typeof result == 'function') {
return this.ct(coerceToString(result.call(cx)), cx, partials);
}
return result;
},
sub: function(name, context, partials, indent) {
var f = this.subs[name];
if (f) {
this.activeSub = name;
f(context, partials, this, indent);
this.activeSub = false;
}
}
};
//Find a key in an object
function findInScope(key, scope, doModelGet) {
var val;
if (scope && typeof scope == 'object') {
if (scope[key] !== undefined) {
val = scope[key];
// try lookup with get for backbone or similar model data
} else if (doModelGet && scope.get && typeof scope.get == 'function') {
val = scope.get(key);
}
}
return val;
}
function createSpecializedPartial(instance, subs, partials, stackSubs, stackPartials, stackText) {
function PartialTemplate() {};
PartialTemplate.prototype = instance;
function Substitutions() {};
Substitutions.prototype = instance.subs;
var key;
var partial = new PartialTemplate();
partial.subs = new Substitutions();
partial.subsText = {}; //hehe. substext.
partial.buf = '';
stackSubs = stackSubs || {};
partial.stackSubs = stackSubs;
partial.subsText = stackText;
for (key in subs) {
if (!stackSubs[key]) stackSubs[key] = subs[key];
}
for (key in stackSubs) {
partial.subs[key] = stackSubs[key];
}
stackPartials = stackPartials || {};
partial.stackPartials = stackPartials;
for (key in partials) {
if (!stackPartials[key]) stackPartials[key] = partials[key];
}
for (key in stackPartials) {
partial.partials[key] = stackPartials[key];
}
return partial;
}
var rAmp = /&/g,
rLt = /</g,
rGt = />/g,
rApos = /\'/g,
rQuot = /\"/g,
hChars = /[&<>\"\']/;
function coerceToString(val) {
return String((val === null || val === undefined) ? '' : val);
}
function hoganEscape(str) {
str = coerceToString(str);
return hChars.test(str) ?
str
.replace(rAmp, '&amp;')
.replace(rLt, '&lt;')
.replace(rGt, '&gt;')
.replace(rApos, '&#39;')
.replace(rQuot, '&quot;') :
str;
}
var isArray = Array.isArray || function(a) {
return Object.prototype.toString.call(a) === '[object Array]';
};
})(typeof exports !== 'undefined' ? exports : Hogan);
(function (Hogan) {
// Setup regex assignments
// remove whitespace according to Mustache spec
var rIsWhitespace = /\S/,
rQuot = /\"/g,
rNewline = /\n/g,
rCr = /\r/g,
rSlash = /\\/g,
rLineSep = /\u2028/,
rParagraphSep = /\u2029/;
Hogan.tags = {
'#': 1, '^': 2, '<': 3, '$': 4,
'/': 5, '!': 6, '>': 7, '=': 8, '_v': 9,
'{': 10, '&': 11, '_t': 12
};
Hogan.scan = function scan(text, delimiters) {
var len = text.length,
IN_TEXT = 0,
IN_TAG_TYPE = 1,
IN_TAG = 2,
state = IN_TEXT,
tagType = null,
tag = null,
buf = '',
tokens = [],
seenTag = false,
i = 0,
lineStart = 0,
otag = '{{',
ctag = '}}';
function addBuf() {
if (buf.length > 0) {
tokens.push({tag: '_t', text: new String(buf)});
buf = '';
}
}
function lineIsWhitespace() {
var isAllWhitespace = true;
for (var j = lineStart; j < tokens.length; j++) {
isAllWhitespace =
(Hogan.tags[tokens[j].tag] < Hogan.tags['_v']) ||
(tokens[j].tag == '_t' && tokens[j].text.match(rIsWhitespace) === null);
if (!isAllWhitespace) {
return false;
}
}
return isAllWhitespace;
}
function filterLine(haveSeenTag, noNewLine) {
addBuf();
if (haveSeenTag && lineIsWhitespace()) {
for (var j = lineStart, next; j < tokens.length; j++) {
if (tokens[j].text) {
if ((next = tokens[j+1]) && next.tag == '>') {
// set indent to token value
next.indent = tokens[j].text.toString()
}
tokens.splice(j, 1);
}
}
} else if (!noNewLine) {
tokens.push({tag:'\n'});
}
seenTag = false;
lineStart = tokens.length;
}
function changeDelimiters(text, index) {
var close = '=' + ctag,
closeIndex = text.indexOf(close, index),
delimiters = trim(
text.substring(text.indexOf('=', index) + 1, closeIndex)
).split(' ');
otag = delimiters[0];
ctag = delimiters[delimiters.length - 1];
return closeIndex + close.length - 1;
}
if (delimiters) {
delimiters = delimiters.split(' ');
otag = delimiters[0];
ctag = delimiters[1];
}
for (i = 0; i < len; i++) {
if (state == IN_TEXT) {
if (tagChange(otag, text, i)) {
--i;
addBuf();
state = IN_TAG_TYPE;
} else {
if (text.charAt(i) == '\n') {
filterLine(seenTag);
} else {
buf += text.charAt(i);
}
}
} else if (state == IN_TAG_TYPE) {
i += otag.length - 1;
tag = Hogan.tags[text.charAt(i + 1)];
tagType = tag ? text.charAt(i + 1) : '_v';
if (tagType == '=') {
i = changeDelimiters(text, i);
state = IN_TEXT;
} else {
if (tag) {
i++;
}
state = IN_TAG;
}
seenTag = i;
} else {
if (tagChange(ctag, text, i)) {
tokens.push({tag: tagType, n: trim(buf), otag: otag, ctag: ctag,
i: (tagType == '/') ? seenTag - otag.length : i + ctag.length});
buf = '';
i += ctag.length - 1;
state = IN_TEXT;
if (tagType == '{') {
if (ctag == '}}') {
i++;
} else {
cleanTripleStache(tokens[tokens.length - 1]);
}
}
} else {
buf += text.charAt(i);
}
}
}
filterLine(seenTag, true);
return tokens;
}
function cleanTripleStache(token) {
if (token.n.substr(token.n.length - 1) === '}') {
token.n = token.n.substring(0, token.n.length - 1);
}
}
function trim(s) {
if (s.trim) {
return s.trim();
}
return s.replace(/^\s*|\s*$/g, '');
}
function tagChange(tag, text, index) {
if (text.charAt(index) != tag.charAt(0)) {
return false;
}
for (var i = 1, l = tag.length; i < l; i++) {
if (text.charAt(index + i) != tag.charAt(i)) {
return false;
}
}
return true;
}
// the tags allowed inside super templates
var allowedInSuper = {'_t': true, '\n': true, '$': true, '/': true};
function buildTree(tokens, kind, stack, customTags) {
var instructions = [],
opener = null,
tail = null,
token = null;
tail = stack[stack.length - 1];
while (tokens.length > 0) {
token = tokens.shift();
if (tail && tail.tag == '<' && !(token.tag in allowedInSuper)) {
throw new Error('Illegal content in < super tag.');
}
if (Hogan.tags[token.tag] <= Hogan.tags['$'] || isOpener(token, customTags)) {
stack.push(token);
token.nodes = buildTree(tokens, token.tag, stack, customTags);
} else if (token.tag == '/') {
if (stack.length === 0) {
throw new Error('Closing tag without opener: /' + token.n);
}
opener = stack.pop();
if (token.n != opener.n && !isCloser(token.n, opener.n, customTags)) {
throw new Error('Nesting error: ' + opener.n + ' vs. ' + token.n);
}
opener.end = token.i;
return instructions;
} else if (token.tag == '\n') {
token.last = (tokens.length == 0) || (tokens[0].tag == '\n');
}
instructions.push(token);
}
if (stack.length > 0) {
throw new Error('missing closing tag: ' + stack.pop().n);
}
return instructions;
}
function isOpener(token, tags) {
for (var i = 0, l = tags.length; i < l; i++) {
if (tags[i].o == token.n) {
token.tag = '#';
return true;
}
}
}
function isCloser(close, open, tags) {
for (var i = 0, l = tags.length; i < l; i++) {
if (tags[i].c == close && tags[i].o == open) {
return true;
}
}
}
function stringifySubstitutions(obj) {
var items = [];
for (var key in obj) {
items.push('"' + esc(key) + '": function(c,p,t,i) {' + obj[key] + '}');
}
return "{ " + items.join(",") + " }";
}
function stringifyPartials(codeObj) {
var partials = [];
for (var key in codeObj.partials) {
partials.push('"' + esc(key) + '":{name:"' + esc(codeObj.partials[key].name) + '", ' + stringifyPartials(codeObj.partials[key]) + "}");
}
return "partials: {" + partials.join(",") + "}, subs: " + stringifySubstitutions(codeObj.subs);
}
Hogan.stringify = function(codeObj, text, options) {
return "{code: function (c,p,i) { " + Hogan.wrapMain(codeObj.code) + " }," + stringifyPartials(codeObj) + "}";
}
var serialNo = 0;
Hogan.generate = function(tree, text, options) {
serialNo = 0;
var context = { code: '', subs: {}, partials: {} };
Hogan.walk(tree, context);
if (options.asString) {
return this.stringify(context, text, options);
}
return this.makeTemplate(context, text, options);
}
Hogan.wrapMain = function(code) {
return 'var t=this;t.b(i=i||"");' + code + 'return t.fl();';
}
Hogan.template = Hogan.Template;
Hogan.makeTemplate = function(codeObj, text, options) {
var template = this.makePartials(codeObj);
template.code = new Function('c', 'p', 'i', this.wrapMain(codeObj.code));
return new this.template(template, text, this, options);
}
Hogan.makePartials = function(codeObj) {
var key, template = {subs: {}, partials: codeObj.partials, name: codeObj.name};
for (key in template.partials) {
template.partials[key] = this.makePartials(template.partials[key]);
}
for (key in codeObj.subs) {
template.subs[key] = new Function('c', 'p', 't', 'i', codeObj.subs[key]);
}
return template;
}
function esc(s) {
return s.replace(rSlash, '\\\\')
.replace(rQuot, '\\\"')
.replace(rNewline, '\\n')
.replace(rCr, '\\r')
.replace(rLineSep, '\\u2028')
.replace(rParagraphSep, '\\u2029');
}
function chooseMethod(s) {
return (~s.indexOf('.')) ? 'd' : 'f';
}
function createPartial(node, context) {
var prefix = "<" + (context.prefix || "");
var sym = prefix + node.n + serialNo++;
context.partials[sym] = {name: node.n, partials: {}};
context.code += 't.b(t.rp("' + esc(sym) + '",c,p,"' + (node.indent || '') + '"));';
return sym;
}
Hogan.codegen = {
'#': function(node, context) {
context.code += 'if(t.s(t.' + chooseMethod(node.n) + '("' + esc(node.n) + '",c,p,1),' +
'c,p,0,' + node.i + ',' + node.end + ',"' + node.otag + " " + node.ctag + '")){' +
't.rs(c,p,' + 'function(c,p,t){';
Hogan.walk(node.nodes, context);
context.code += '});c.pop();}';
},
'^': function(node, context) {
context.code += 'if(!t.s(t.' + chooseMethod(node.n) + '("' + esc(node.n) + '",c,p,1),c,p,1,0,0,"")){';
Hogan.walk(node.nodes, context);
context.code += '};';
},
'>': createPartial,
'<': function(node, context) {
var ctx = {partials: {}, code: '', subs: {}, inPartial: true};
Hogan.walk(node.nodes, ctx);
var template = context.partials[createPartial(node, context)];
template.subs = ctx.subs;
template.partials = ctx.partials;
},
'$': function(node, context) {
var ctx = {subs: {}, code: '', partials: context.partials, prefix: node.n};
Hogan.walk(node.nodes, ctx);
context.subs[node.n] = ctx.code;
if (!context.inPartial) {
context.code += 't.sub("' + esc(node.n) + '",c,p,i);';
}
},
'\n': function(node, context) {
context.code += write('"\\n"' + (node.last ? '' : ' + i'));
},
'_v': function(node, context) {
context.code += 't.b(t.v(t.' + chooseMethod(node.n) + '("' + esc(node.n) + '",c,p,0)));';
},
'_t': function(node, context) {
context.code += write('"' + esc(node.text) + '"');
},
'{': tripleStache,
'&': tripleStache
}
function tripleStache(node, context) {
context.code += 't.b(t.t(t.' + chooseMethod(node.n) + '("' + esc(node.n) + '",c,p,0)));';
}
function write(s) {
return 't.b(' + s + ');';
}
Hogan.walk = function(nodelist, context) {
var func;
for (var i = 0, l = nodelist.length; i < l; i++) {
func = Hogan.codegen[nodelist[i].tag];
func && func(nodelist[i], context);
}
return context;
}
Hogan.parse = function(tokens, text, options) {
options = options || {};
return buildTree(tokens, '', [], options.sectionTags || []);
}
Hogan.cache = {};
Hogan.cacheKey = function(text, options) {
return [text, !!options.asString, !!options.disableLambda, options.delimiters, !!options.modelGet].join('||');
}
Hogan.compile = function(text, options) {
options = options || {};
var key = Hogan.cacheKey(text, options);
var template = this.cache[key];
if (template) {
var partials = template.partials;
for (var name in partials) {
delete partials[name].instance;
}
return template;
}
template = this.generate(this.parse(this.scan(text, options.delimiters), text, options), text, options);
return this.cache[key] = template;
}
})(typeof exports !== 'undefined' ? exports : Hogan);
var Mustache = (function (Hogan) {
// Mustache.js has non-spec partial context behavior
function mustachePartial(name, context, partials, indent) {
var partialScope = this.f(name, context, partials, 0);
var cx = context;
if (partialScope) {
cx = cx.concat(partialScope);
}
return Hogan.Template.prototype.rp.call(this, name, cx, partials, indent);
}
var HoganTemplateWrapper = function(renderFunc, text, compiler){
this.rp = mustachePartial;
Hogan.Template.call(this, renderFunc, text, compiler);
};
HoganTemplateWrapper.prototype = Hogan.Template.prototype;
// Add a wrapper for Hogan's generate method. Mustache and Hogan keep
// separate caches, and Mustache returns wrapped templates.
var wrapper;
var HoganWrapper = function(){
this.cache = {};
this.generate = function(code, text, options) {
return new HoganTemplateWrapper(new Function('c', 'p', 'i', code), text, wrapper);
}
};
HoganWrapper.prototype = Hogan;
wrapper = new HoganWrapper();
return {
to_html: function(text, data, partials, sendFun) {
var template = wrapper.compile(text);
var result = template.render(data, partials);
if (!sendFun) {
return result;
}
sendFun(result);
}
}
})(Hogan);

File diff suppressed because it is too large Load Diff

View File

@@ -1,141 +0,0 @@
// ==========================================================================
// HTML5 Video Player Demo Page
// ==========================================================================
// Reset
@import "docs/normalize.less";
// Mixins
@import "docs/mixins.less";
// Variables
// ---------------------------------------
// Colors
@blue: #3498DB;
@gray-dark: #343f4a;
@gray: #565d64;
@gray-light: #cbd0d3;
// Elements
@link-color: @blue;
@padding-base: 20px;
// Breakpoints
@screen-md: 768px;
// BORDER-BOX ALL THE THINGS!
// http://paulirish.com/2012/box-sizing-border-box-ftw/
*, *::after, *::before {
box-sizing: border-box;
}
// Base
html {
//font-size: 62.5%;
}
body {
font-family: "Avenir", "Helvetica Neue", Helvetica, Arial, sans-serif;
background: #fff;
//.font-size(16);
line-height: 1.5;
text-align: center;
color: #6D797F;
}
// Type
h1,
h2 {
letter-spacing: -.025em;
color: #2E3C44;
margin: 0 0 (@padding-base / 2);
line-height: 1.2;
.font-smoothing();
}
h1 {
.font-size(64);
color: #3498DB;
}
p,
small {
margin: 0 0 @padding-base;
}
small {
display: block;
padding: 0 (@padding-base / 2);
.font-size(14);
}
// Header
header {
padding: @padding-base;
margin-bottom: @padding-base;
p {
.font-size(18);
}
@media (min-width: 560px) {
padding-top: (@padding-base * 3);
padding-bottom: (@padding-base * 3);
}
}
// Sections
section {
padding-bottom: @padding-base;
@media (min-width: 560px) {
padding-bottom: (@padding-base * 2);
}
}
// Links & Buttons
a {
text-decoration: none;
color: @link-color;
border-bottom: 1px solid currentColor;
transition: all .3s ease;
&:hover,
&:focus {
color: #000;
}
&:focus {
.tab-focus();
}
}
.btn {
display: inline-block;
padding: (@padding-base / 2) (@padding-base * 1.5);
background: @link-color;
border: 0;
color: #fff;
.font-smoothing(on);
font-weight: 600;
border-radius: 3px;
&:hover,
&:focus {
color: #fff;
background: darken(@link-color, 5%);
}
}
// Players
.example-audio .player {
max-width: 480px;
}
.example-video .player {
max-width: 1200px;
}
.example-audio .player,
.example-video .player {
margin: 0 auto @padding-base;
&-fullscreen,
&.fullscreen-active {
max-width: none;
}
}
// Fonts
// Last to not block rendering
@import "docs/fontface.less";

View File

@@ -1,16 +0,0 @@
@font-face {
font-family: "Avenir";
src: url("../../assets/fonts/AvenirLTStd-Medium.woff2") format("woff2"),
url("../../assets/fonts/AvenirLTStd-Medium.woff") format("woff"),
url("../../assets/fonts/AvenirLTStd-Medium.ttf") format("truetype");
font-style: normal;
font-weight: 400;
}
@font-face {
font-family: "Avenir";
src: url("../../assets/fonts/AvenirLTStd-Heavy.woff2") format("woff2"),
url("../../assets/fonts/AvenirLTStd-Heavy.woff") format("woff"),
url("../../assets/fonts/AvenirLTStd-Heavy.ttf") format("truetype");
font-style: normal;
font-weight: 600;
}

View File

@@ -1,42 +0,0 @@
// ==========================================================================
// Mixins
// ==========================================================================
// Contain floats: nicolasgallagher.com/micro-clearfix-hack/
// ---------------------------------------
.clearfix() {
zoom: 1;
&:before,
&:after { content: ""; display: table; }
&:after { clear: both; }
}
// Webkit-style focus
// ---------------------------------------
.tab-focus() {
// Default
outline: thin dotted @gray-dark;
// Webkit
//outline: 5px auto -webkit-focus-ring-color;
outline-offset: 1px;
}
// Use rems for font sizing
// Leave <body> at 100%/16px
// ---------------------------------------
.font-size(@font-size: 16){
@rem: round((@font-size / 16), 1);
font-size: (@font-size * 1px);
font-size: ~"@{rem}rem";
}
// Font smoothing
// ---------------------------------------
.font-smoothing(@mode: on) when (@mode = on) {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
.font-smoothing(@mode: on) when (@mode = off) {
-moz-osx-font-smoothing: auto;
-webkit-font-smoothing: subpixel-antialiased;
}

View File

@@ -1,406 +0,0 @@
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined in IE 8/9.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
display: block;
}
/**
* Correct `inline-block` display not defined in IE 8/9.
*/
audio,
canvas,
video {
display: inline-block;
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9.
* Hide the `template` element in IE, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* ==========================================================================
Base
========================================================================== */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* ==========================================================================
Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background: transparent;
}
/**
* Address `outline` inconsistency between Chrome and other browsers.
*/
a:focus {
outline: thin dotted;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* ==========================================================================
Typography
========================================================================== */
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari 5, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9, Safari 5, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari 5 and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Correct font family set oddly in Safari 5 and Chrome.
*/
code,
kbd,
pre,
samp {
font-family: monospace, serif;
font-size: 1em;
}
/**
* Improve readability of pre-formatted text in all browsers.
*/
pre {
white-space: pre-wrap;
}
/**
* Set consistent quote types.
*/
q {
quotes: "\201C" "\201D" "\2018" "\2019";
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* ==========================================================================
Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9.
*/
img {
border: 0;
}
/**
* Correct overflow displayed oddly in IE 9.
*/
svg:not(:root) {
overflow: hidden;
}
/* ==========================================================================
Figures
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari 5.
*/
figure {
margin: 0;
}
/* ==========================================================================
Forms
========================================================================== */
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* 1. Correct font family not being inherited in all browsers.
* 2. Correct font size not being inherited in all browsers.
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
*/
button,
input,
select,
textarea {
font-family: inherit; /* 1 */
font-size: 100%; /* 2 */
margin: 0; /* 3 */
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
button,
input {
line-height: normal;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
* Correct `select` style inheritance in Firefox 4+ and Opera.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari 5 and Chrome
* on OS X.
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* 1. Remove default vertical scrollbar in IE 8/9.
* 2. Improve readability and alignment in all browsers.
*/
textarea {
overflow: auto; /* 1 */
vertical-align: top; /* 2 */
}
/* ==========================================================================
Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}

View File

@@ -1,416 +0,0 @@
// ==========================================================================
// HTML5 Media Player
// ==========================================================================
// Variables
// -------------------------------
// Colors
@blue: #3498DB;
@gray-dark: #343f4a;
@gray: #565d64;
@gray-light: #cbd0d3;
// Controls
@controls-bg: @gray-dark;
@control-color: @gray-light;
@control-color-active: @blue;
@control-color-inactive: @gray;
@control-spacing: 10px;
// Progress
@progress-bg: @gray;
@progress-value-bg: @blue;
// Range
@range-track-height: 6px;
@range-track-bg: @gray;
@range-thumb-height: (@range-track-height * 2);
@range-thumb-width: (@range-track-height * 2);
@range-thumb-bg: @control-color;
@range-thumb-bg-focus: @control-color-active;
// Breakpoints
@bp-control-split: 560px; // When controls split into left/right
@bg-captions-large: 768px; // When captions jump to the larger font size
// Utility classes & mixins
// -------------------------------
// Screen reader only
.sr-only {
position: absolute !important;
clip: rect(1px, 1px, 1px, 1px);
padding: 0 !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
overflow: hidden;
}
// Contain floats: nicolasgallagher.com/micro-clearfix-hack/
.clearfix() {
zoom: 1;
&:before,
&:after { content: ""; display: table; }
&:after { clear: both; }
}
// Tab focus styles
.tab-focus() {
outline: thin dotted #000;
outline-offset: 1px;
}
// Range styling
// ---------------------------------------
.range-thumb() {
height: @range-thumb-height;
width: @range-thumb-width;
background: @range-thumb-bg;
border: 0;
border-radius: (@range-thumb-height / 2);
transition: background .3s ease;
cursor: ew-resize;
}
.range-track() {
height: @range-track-height;
background: @range-track-bg;
border: 0;
border-radius: (@range-track-height / 2);
}
// Font smoothing
// ---------------------------------------
.font-smoothing(@mode: on) when (@mode = on) {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
.font-smoothing(@mode: on) when (@mode = off) {
-moz-osx-font-smoothing: auto;
-webkit-font-smoothing: subpixel-antialiased;
}
// Styles
// -------------------------------
// Base
.player {
position: relative;
max-width: 100%;
min-width: 290px;
overflow: hidden; // For the controls
background: #000;
// BORDER-BOX ALL THE THINGS!
// http://paulirish.com/2012/box-sizing-border-box-ftw/
&,
*,
*::after,
*::before {
box-sizing: border-box;
}
// For video
&-video-wrapper {
position: relative;
}
video {
width: 100%;
height: auto;
vertical-align: middle;
}
// Captions
&-captions {
display: none;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
padding: 20px;
min-height: 2.5em;
color: #fff;
font-size: 16px;
font-weight: 600;
text-shadow:
-1px -1px 0 rgba(red(@gray-dark), green(@gray-dark), blue(@gray-dark), .5),
1px -1px 0 rgba(red(@gray-dark), green(@gray-dark), blue(@gray-dark), .5),
-1px 1px 0 rgba(red(@gray-dark), green(@gray-dark), blue(@gray-dark), .5),
1px 1px 0 rgba(red(@gray-dark), green(@gray-dark), blue(@gray-dark), .5);
text-align: center;
.font-smoothing();
@media (min-width: @bg-captions-large) {
font-size: 24px;
}
}
&.captions-active &-captions {
display: block;
}
// Player controls
&-controls {
.clearfix();
.font-smoothing();
position: relative;
padding: (@control-spacing * 2) @control-spacing @control-spacing;
background: @controls-bg;
line-height: 1;
text-align: center;
// Layout
&-sound {
display: block;
margin: @control-spacing auto 0;
}
@media (min-width: @bp-control-split) {
&-playback {
float: left;
}
&-sound {
float: right;
margin-top: 0;
}
}
input + label,
button {
display: inline-block;
vertical-align: middle;
margin: 0 2px;
padding: (@control-spacing / 2) @control-spacing;
transition: background .3s ease;
border-radius: 3px;
cursor: pointer;
svg {
width: 18px;
height: 18px;
display: block;
fill: currentColor;
transition: fill .3s ease;
}
}
input + label,
input.inverted:checked + label {
color: @control-color-inactive;
}
button,
input.inverted + label,
input:checked + label {
color: @control-color;
}
button {
border: 0;
background: transparent;
overflow: hidden;
}
input:focus + label,
button:focus {
.tab-focus();
svg {
fill: #fff;
}
}
button:hover,
input + label:hover {
background: @control-color-active;
svg {
fill: #fff;
}
}
.icon-exit-fullscreen,
.icon-muted {
display: none;
}
.player-time {
display: inline-block;
vertical-align: middle;
margin-left: @control-spacing;
color: #fff;
font-weight: 600;
font-size: 14px;
.font-smoothing();
}
}
// Player progress
// <progress> element
&-progress {
position: absolute;
top: 0;
left: 0;
right: 0;
width: 100%;
height: @control-spacing;
margin: 0;
vertical-align: top;
&[value] {
-webkit-appearance: none;
border: none;
background: @progress-bg;
cursor: pointer;
color: @progress-value-bg;
&::-webkit-progress-bar {
background: @progress-bg;
}
// Inherit from currentColor;
&::-webkit-progress-value {
background: currentColor;
}
&::-moz-progress-bar {
background: currentColor;
}
}
}
// States
&-controls [data-player='pause'],
&.playing .player-controls [data-player='play'] {
display: none;
}
&.playing .player-controls [data-player='pause'] {
display: inline-block;
}
// Muted
&.muted .player-controls .icon-muted {
display: block;
& + svg {
display: none;
}
}
// Volume control
// <input[type='range']> element
&-volume {
vertical-align: middle;
-webkit-appearance: none;
-moz-appearance: none;
//height: 6px;
width: 100px;
margin: 0 @control-spacing 0 0;
padding: 0;
cursor: pointer;
background: none;
// Webkit
&::-webkit-slider-runnable-track {
.range-track();
}
&::-webkit-slider-thumb {
-webkit-appearance: none;
margin-top: -((@range-thumb-height - @range-track-height) / 2);
.range-thumb();
}
// Mozilla
&::-moz-range-track {
.range-track();
}
&::-moz-range-thumb {
.range-thumb();
}
// Microsoft
&::-ms-track {
height: @range-track-height;
background: transparent;
border-color: transparent;
border-width: ((@range-thumb-height - @range-track-height) / 2) 0;
color: transparent;
}
&::-ms-fill-lower,
&::-ms-fill-upper {
.range-track();
}
&::-ms-thumb {
.range-thumb();
}
&:focus {
outline: 0;
&::-webkit-slider-thumb {
background: @range-thumb-bg-focus;
}
&::-moz-range-thumb {
background: @range-thumb-bg-focus;
}
&::-ms-thumb {
background: @range-thumb-bg-focus;
}
}
}
// Full screen mode
&-fullscreen,
&.fullscreen-active {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
height: 100%;
width: 100%;
z-index: 10000000;
.player-video-wrapper {
height: 100%;
width: 100%;
video {
height: 100%;
}
.player-captions {
top: auto;
bottom: 90px;
@media (min-width: @bp-control-split) and (max-width: (@bg-captions-large - 1)) {
bottom: 60px;
}
@media (min-width: @bg-captions-large) {
bottom: 80px;
}
}
}
.player-controls {
position: absolute;
bottom: 0;
left: 0;
right: 0;
.icon-exit-fullscreen {
display: block;
& + svg {
display: none;
}
}
}
}
// Some options are hidden by default
[data-player='captions'],
[data-player='captions'] + label,
[data-player='fullscreen'],
[data-player='fullscreen'] + label {
display: none;
}
&.captions-enabled [data-player='captions'],
&.captions-enabled [data-player='captions'] + label,
&.fullscreen-enabled [data-player='fullscreen'],
&.fullscreen-enabled [data-player='fullscreen'] + label {
display: inline-block;
}
// Full browser view hides toggle
&-fullscreen [data-player='fullscreen'],
&-fullscreen [data-player='fullscreen'] + label {
display: none !important;
}
}

View File

@@ -1,54 +0,0 @@
<div class="player-controls">
<progress class="player-progress" max="100" value="0">
<span>0</span>% played
</progress>
<span class="player-controls-playback">
<button type="button" data-player="restart">
<svg><use xlink:href="#icon-refresh"></use></svg>
<span class="sr-only">Restart</span>
</button>
<button type="button" data-player="rewind">
<svg><use xlink:href="#icon-rewind"></use></svg>
<span class="sr-only">Rewind <span class="player-seek-time">10</span> seconds</span>
</button>
<button type="button" aria-label="{aria-label}" data-player="play">
<svg><use xlink:href="#icon-play"></use></svg>
<span class="sr-only">Play</span>
</button>
<button type="button" data-player="pause">
<svg><use xlink:href="#icon-pause"></use></svg>
<span class="sr-only">Pause</span>
</button>
<button type="button" data-player="fast-forward">
<svg><use xlink:href="#icon-fast-forward"></use></svg>
<span class="sr-only">Fast forward <span class="player-seek-time">10</span> seconds</span>
</button>
<span class="player-time">
<span class="sr-only">Time</span>
<span class="player-duration">00:00</span>
</span>
</span>
<span class="player-controls-sound">
<input class="inverted sr-only" id="mute{id}" type="checkbox" data-player="mute">
<label id="mute{id}" for="mute{id}">
<svg class="icon-muted"><use xlink:href="#icon-muted"></use></svg>
<svg><use xlink:href="#icon-sound"></use></svg>
<span class="sr-only">Mute</span>
</label>
<label for="volume{id}" class="sr-only">Volume:</label>
<input id="volume{id}" class="player-volume" type="range" min="0" max="10" value="5" data-player="volume">
<input class="sr-only" id="captions{id}" type="checkbox" data-player="captions">
<label for="captions{id}">
<svg><use xlink:href="#icon-bubble"></use></svg>
<span class="sr-only">Captions</span>
</label>
<button type="button" data-player="fullscreen">
<svg class="icon-exit-fullscreen"><use xlink:href="#icon-collapse"></use></svg>
<svg><use xlink:href="#icon-expand"></use></svg>
<span class="sr-only">Toggle fullscreen</span>
</button>
</span>
</div>

View File

@@ -6,15 +6,19 @@
"Audio",
"Video",
"HTML5 Audio",
"HTml5 Video"
"HTML5 Video"
],
"authors": [
"Sam Potts <me@sampotts.me>"
"Sam Potts <sam@potts.es>"
],
"dependencies": {},
"main": [
"dist/css/plyr.css",
"dist/js/plyr.js"
"dist/plyr.css",
"dist/plyr.js",
"dist/plyr.svg",
"src/less/plyr.less",
"src/scss/plyr.scss",
"src/js/plyr.js"
],
"ignore": [
"node_modules",
@@ -23,7 +27,7 @@
],
"repository": {
"type": "git",
"url": "git://github.com/selz/plyr.git"
"url": "git://github.com/sampotts/plyr.git"
},
"license": "BSD"
"license": "MIT"
}

View File

@@ -1,14 +1,19 @@
{
"less": {
"plyr.css": ["assets/less/plyr.less"],
"docs.css": ["assets/less/docs.less"]
"plyr": {
"sass": {
"plyr.css": "src/sass/plyr.scss"
},
"js": {
"plyr.js": ["assets/js/plyr.js"],
"docs.js": [
"assets/js/lib/hogan-3.0.2.mustache.js",
"dist/js/templates.js",
"assets/js/docs.js"
]
"plyr.js": "src/js/plyr.js"
}
},
"demo": {
"sass": {
"demo.css": "demo/src/sass/bundles/demo.scss",
"error.css": "demo/src/sass/bundles/error.csss"
},
"js": {
"demo.js": "demo/src/js/demo.js"
}
}
}

743
changelog.md Normal file
View File

@@ -0,0 +1,743 @@
# v3.0.0
This is a massive release. A _mostly_ complete rewrite in ES6. What started out as a few changes quickly snowballed. There's many breaking changes so be careful upgrading.
### Big changes
* New settings menu complete with funky animations
* Ability to adjust speed of playback
* Ability to toggle caption language (HTML5 and Vimeo only)
* Ability to set YouTube quality (HTML5 will follow)
* Added support for Vimeo captions
* Added Picture-in-Picture support (Safari only)
* Added AirPlay support (again, Safari only)
* Added `playsinline` support for iOS 10+
* Soundcloud removed until I can work on a plugin framework
* Embedded players are now progressively enhanced - no more empty `<div>`s!
### Other stuff
* Now using SASS exclusively. Sorry, LESS folk it just made sense to maintain one method as SASS is what the cool kids use
* Moved to ES6. All the rage these days
* Added basic looping support
* Added an aspect ratio option for those that can't leave the 90s and want 4:3
* `controlshidden` and `controlsshown` events added for when the controls show or hide
* `qualityrequested` and `qualitychange` events for YouTube quality control (HTML5 will follow)
* Volume is now `0` to `1` as per HTML5 spec
* No longer bodging a `<progress>` behind the `<input type="range">` to make up for WebKit's lack of lower fill styling
* Captions now render with line breaks as intended
* Captions now render without AJAX using the native events etc
* Added a fallback for getting YouTube video data incase `.getVideoData()` disappears when one of their developers randomly deletes it again
* Setup and building of the UI should be way "snappier"
* Click to toggle inverted time (e.g. 0:01 or -2:59 for a 3 minute video at 1 seconds) - new `toggleInvert` and `invertTime` options
* Added `autopause` option for Vimeo
* Added `muted` option for you guessed it, muted playback
* Restored the `.off()` API method
* `.play()` will now return a promise to prevent that pesky uncaught promise issue in Chrome etc
* Pressing and hold the seek bar no longer freezes all other updates of the UI
...plus loads of bug fixes.
### Breaking changes
You gotta break eggs to make an omelette. Sadly, there's quite a few breaking changes:
* Setup now uses proper constructor, accepts a single selector/element/node and returns a single instance - much simpler than before
* Much of the API is now using getters and setters rather than methods (where it makes sense) to match the HTML5 API - see the docs for more info
* `blankUrl` -> `blankVideo`
* `volume` is now `0` to `1` as per HTML5 spec
* `keyboardShorcuts` (typo) is now just `keyboard`
* `loop` is now `loop.active` in preparation for loop enhancements later
* `html` option for custom controls removed in favour of the `controls` option which now accepts an array (to use built in controls) or a string of HTML for custom controls.
* `classes` -> `classNames`
* `classes.videoWrapper` -> `classNames.video`
* `classes.embedWrapper` -> `classNames.embed`
* `classes.ready` removed
* `classes.setup` removed
* `classes.muted` removed
* `classes.fullscreen.active` removed in favour of the `:fullscreen` selector
* `selectors.html5` removed
* `selectors.embed` removed
* `selectors.buttons.seek` -> `selectors.inputs.seek`
* `selectors.volume.input` -> `selectors.inputs.volume`
* `selectors.volume.display` -> `selectors.display.volume`
* `selectors.currentTime` -> `selectors.display.currentTime`
* `selectors.duration` -> `selectors.display.duration`
### Polyfilling
Because we're using the fancy new ES6 syntax, you will need to polyfill for vintage browsers if you want to use Plyr and still support them. Luckily there's a decent service for this that makes it painless, [https://polyfill.io](polyfill.io).
## v2.0.18
* Fix for YouTube .getVideoData() issue (fixes #709)
## v2.0.17
* Vimeo controls fix (fixes #697)
* SVG4everybody compatibility fix
* Allow Plyr.setup event listeners to be set up as separate event listeners (https://github.com/sampotts/plyr/pull/703)
* Added title to the layer html template (for custom controls) (https://github.com/sampotts/plyr/pull/649)
* Target is null bug fix (https://github.com/sampotts/plyr/pull/617)
* fix #684 memory leaks issues after destroy (https://github.com/sampotts/plyr/pull/700)
## v2.0.16
* Fullscreen bug fix (fixes #664)
## v2.0.15
* Demo fix
## v2.0.14
* CDN URL updates. Sorry, still working on V3 as hard as I can...
## v2.0.13
* Repo moved and Vimeo demo fix
## v2.0.12
* Ability to set custom `blankUrl` for source changes (https://github.com/sampotts/plyr/pull/504)
* Ability to set caption button listener (https://github.com/sampotts/plyr/pull/468)
## v2.0.11
* Fix for `cleanUp` being called twice (thanks to @sebastiancarlsson)
* Fix for YouTube controls on iPad (fixes #391)
## v2.0.10
* Added seek event fixes for Vimeo and YouTube (fixes #409)
* Added support for embed URLs rather than ID only (fixes #345)
## v2.0.9
* Temporary patch for the YouTube API issues with `getDuration()` (relates to #374)
## v2.0.8
* Added `isPaused()` API method (thanks to @darrena092)
* Allowed `.on()` API method to be chainable (thanks to @gurupras) (fixes #357)
* Improved the "awful" rendering of captions on small screens in fullscreen mode (fixes #390)
* Fix for Firefox VTT compatibility (thanks to @magourex)
* Fix for Firefox Developer Edition blank video due to `-webkit-mask-image` issue (fixes #392)
* Added Issue and PR templates with the aim of reducing duplicate or duff issues
## v2.0.7
* Fixed `getCurrentTime()` method (fixes #351)
* Added `getVolume()` , `isMuted()` and `getDuration()` API methods (fixes #346)
## v2.0.6
* Fixed merge issue with `Updated define to work with AMD imports #326` PR
* Code formatting
## v2.0.5
* Fix for Vimeo in IE9 & IE10
* Fix for HTML5 elements not firing `ready` event
## v2.0.4
* Fix for Firefox full screen (fixes #343)
## v2.0.3
* Set 'global' keyboard shortcut option to false as default, added `<textarea>` to editable elements to be ignored
## v2.0.2
* Added 'global' keyboard shortcut option
## v2.0.1
* Version bump for NPM (sorry for folks who upgraded to the now deleted v1.9.0 through NPM)
# v2.0.0
This version contains several potential **_breaking changes_**:
* `setup()` has been reverted to pre v1.8.0 behaviour; meaning it will return the _instance_ rather than the _element_. This is because the reference to the instance is no longer added to the original element (see below).
* The reference to the `plyr` instance is now added to the media element rather than original container. This is because if a container with multiple children was passed to `setup()` the references to all instances would have been added to the container, creating issues. I would recommend using the return value from `setup()` or the new `get()` method to access the instance.
* Players will always be wrapped in their own div now - this makes `setup()` and `destroy()` cleaner. This _may_ break any custom styling based on DOM position.
* Players no longer seek to 0 on 'ended' - this is to fix a bug with Microsoft Edge as it triggers 'ended' on media change for whatever reason. They'll never change ;-)
And some other changes and bug fixes:
* New `get()` method on the global plyr object to get all instances inside a container
* New API methods: - `getOriginal()` to get the original, _unmodified_ element plyr was setup on (`<video>`, `<audio>` or empty `<div>` for YouTube and Vimeo) - `getContainer()` to get the players outer wrapper element - `getMedia()` to get the players media element (`<video>`, `<audio>` or empty `<div>` for YouTube and Vimeo) - `getEmbed()` to access the YouTube or Vimeo API directly - `getType()` to get the type of the player - `isReady()` to determine if an instance has completed setup and necessary APIs are loaded (for YouTube / Vimeo) - `on()` to provide an easy way to listen to events - `stop()` to, you guessed it, stop the player
* `destroy()` now works correctly for YouTube and Vimeo (fixes #272)
* New `destroyed` event when `destroy()` has completed (original element is passed as event.target)
* Default volume is now 10 (max) rather than 5
* Sprite is only loaded once (fixes #259)
* Fixes for Vimeo post message bugs on source change or destroy (fixes #318)
* Save caption state in storage (fixes #311)
* Added keyboard shortcuts to the current focused player (with `keyboardShortcuts` boolean option to disable) (fixes #309)
* Fix for captions bug (fixes #332)
* Change to AMD (fixes #298)
## v1.8.12
* Vimeo keyboard focus fix (Fixes #317)
* Fix for Vimeo on basic support devices
## v1.8.11
* Fix for keyboard navigation on Vimeo (Fixes #317)
* Fix for bug introduced in v1.8.9 related to additional controls
* Vimeo API upgrade
* Fix for YouTube bug introduced in v1.8.9
* Added support for passing array to .setup() (Fixes #319)
## v1.8.10
* Fix for seek issues introduced in v1.8.9
## v1.8.9
* Fix for fullscreen not being defined (Fixes #295)
* Fix for multiline captions (Fixes #314)
* Clean up of type checks and fix for `restart()` (Fixes #315)
* Fix for `MEDIA_ERR_SRC_NOT_SUPPORTED` when calling `.source()` API method
## v1.8.8
* Added getCurrentTime API method (fixes #292)
* Fix for !hideControls on touch devices (fixes #303)
## v1.8.7
* Line height fix
## v1.8.6
* Reverted font size change
## v1.8.5
* Fixed overflow issues (fixes #286)
## v1.8.4
* Fix for large play button on small videos
## v1.8.3
* Disabled iPad support for YouTube and Vimeo due to iOS limitations with iFrame playback
* Fixed IE11 icon loading (fixes #269)
* Updated screenshot (fixes #281)
* Added WordPress plugin (fixes #239)
* Added Neos plugin
* Added HLS, Shaka and dash.js examples (see #235 for more)
* Improvements for controls hiding and showing on touch devices
## v1.8.2
* Fixed event bubbling
## v1.8.1
* Fixed inaccurate log message
# v1.8.0
* **_(Important)_** `setup()` now returns the element Plyr was setup on rather than the `plyr` object. This means `var player = plyr.setup()[0];` would now be `var player = plyr.setup()[0].plyr;`. This improves support for React and other virtual dom frameworks as mentioned in #254
* Fixed using a relative URL for `iconUrl` in IE (fixes #269)
# v1.7.0
* SASS cleanup (fixes #265)
* Docs tidy up to help quick start (fixes #253)
* Fix for issues with data attribute options passing (fixes #257)
* **_(Important)_** Removed the requirement for a wrapper div to setup Plyr and removed the dependency on the `plyr` classname as a JS hook. By default it will now look for `<video>`, `<audio>` and `[data-type]` elements. If you are just calling `setup()` with a `<div class="plyr">` you may want to give it a good test after upgrading. You can probably remove the wrapper div. The reason behind this is to make setup easier for newcomers and prevent the styling being used on unsupported players (because the plyr classname was used as a CSS and JS hook - which isn't ideal)
* Renamed the 'docs' folder to `demo` to avoid confusion - the readme is the docs after all
## v1.6.20
* Fix for multiple sprites being requested (fixes #259)
## v1.6.19
* Fix for scroll direction issues on volume control (fixes #258)
## v1.6.18
* Reduced rounding of seek value from 1 decimal point to 4 (fixes #242)
## v1.6.17
* Added `disableContextMenu` option to hide the right click context menu (fixes #248 and #225)
## v1.6.16
* Always hide standard controls (fixes #225)
* Fix for Tooltips overflowing (fixes #230)
## v1.6.15
* Restore scroll position when exiting full screen (fixes #236)
## v1.6.14
* SVG sprite loading automatically for an easier setup
* Touch devices now show controls on touch rather than pausing playback
## v1.6.13
* Decreased sensitivity and inverted scroll on volume slider (scroll up to increase, down to decrease)
## v1.6.12
* Fix for undefined buffer error
* Add scroll listener on volume slider (PR #227 bty @igoradamenko)
## v1.6.11
* Fix for Vimeo fullscreen (fixes #214)
## v1.6.10
* Changed default icon prefix from 'icon' to 'plyr' to avoid clashes
## v1.6.9
* Added 'latest' CDN option
* Renamed `sprite.svg` to `plyr.svg` to be inline with the other package files
## v1.6.8
* Fix for bug introduced in v1.6.7
## v1.6.7
* Fixes for using `source` API method on iOS
## v1.6.6
* Icons cleaned up
* IE11 button fix for tooltips (fixes #210)
## v1.6.5
* IE UI bug fixes
## v1.6.4
* Bug fix for undefined progress bar
## v1.6.3
* Seek back to 0 for all media on ended
* Check for HTML5 video on ended reload
* Update to docs for `showPosterOnEnd` option
## v1.6.2
* Fix for tooltip displaying when duration is not set (fixes #177)
* `showPosterOnEnd` option to show poster when HTML5 video ended (fixes #59)
* Error handler for YouTube (fixes #189)
* Initial SoundCloud support (fixes #194)
* Other minor bug fixes
## v1.6.1
* Tooltip changes for accessibility
## v1.6.0
* New, cleaner, UI: - Controls are now overlaid, maintaining the video's ratio and making sizing easier - A large play button can now be overlaid over videos - Default number of control buttons reduced - New play, pause, rewind and fast forward icons - Flexbox all the things!
* Tidied up the LESS (and SCSS) as part of the above, variables and mixins in seprate files amking customization and upgrades easier
* Toggle mute bug fix; if a player was muted previously and the user refreshed, unmuting would have meant volume was still zero (effectively muted), now the config default value is used. Not ideal but good for now
* New `iconUrl` option allowing specifying a same origin SVG sprite location. Loading this way means you don't need the AJAX sprite loading JavaScript
* `click` option renamed to `clickToPlay` to make it a bit more self explanatory. Unfortunately cross origin SVG sprites is not supported in any browser yet :-(
* `hideControls` is now a global option, rather than being exclusive to fullscreen. Controls are now hidden after 2 seconds of no mouse movement. Controls are always shown when media is paused or stopped. This is defaulted to true.
* `sass` folder in `src` renamed from to `scss`
## v1.5.21
* Bug fix for embeds: `play` not being defined (fixes #185 and #186)
## v1.5.20
* Bug fix for autoplay option
## v1.5.19
* Fix for accessing `embed` property after `ready` event fired
## v1.5.18
* Added 'ready' event for initial setup complete or source change occurs
* Fixed SASS stylesheet references to transparentize
* Added default font stack to controls
* Docs fixes inc controls HTML (fixes #180)
## v1.5.17
* Expose YouTube and Vimeo API (docs update required) (fixes #176)
* Auto set title based on YouTube getVideoData() title property
* Bug fix for Vimeo API change (Uncaught TypeError: Cannot read property 'value' of undefined) due to a change their end
## v1.5.16
* Cancel requests on source change (fixes #174)
## v1.5.15
* Fix for CustomEvent polyfill and related bug (see #172)
## v1.5.14
* Volume storage fix (fixes #171)
## v1.5.13
* Fix for manual caption rendering
## v1.5.12
* Added a duration option to pass the duration of the file
* Added the ability to set options per element by setting a data-plyr attribute on the target elements (this might be useful for the duration option for example)
* Fixes for Chrome and Safari caption rendering, they now use the default texttrack and cuechange events
* Firefox bug fix for event not defined
## v1.5.11
* iOS embed bug fixes (fixes #166)
* Hide IE/Edge <input type='range'> tooltip (since we have a styled one) (fixes #160)
* SASS bug fix for default values (fixes #158)
## v1.5.9 + v1.5.10
* NPM bug fixes
## v1.5.8
* Fix for touch device seek tooltip
* Seek improvements
## v1.5.7
* Fix for control tooltips always showing
## v1.5.6
* Seek tooltip (option for tooltips changed, please check docs)
* SASS compile error fixes (fixes #148)
* Fullscreen fixes for controls not always hiding/showing (fixes #149)
* Screen reader icon fixes (title was being read twice due to the tooltip/hidden label)
## v1.5.5
* Fixed controls.md example
* Bug fix for docs error page
* Bug fix for controls tooltips
## v1.5.4
* Minor bug fix for clicking video to play/pause after source change
## v1.5.3
* Minor bug fix for occasional display of 0:00 as the media duration
## v1.5.2
* `handlers` option renamed to `listeners`
* Added event listeners for all types to the plyr container (playback, fullscreen, captions etc - see docs)
* Removed onSetup config option (use the 'setup' event instead, plyr element is event.plyr)
* Style bug fixes
* Vimeo seek bug fix (requires whole seconds when seeking)
* Fix for fullscreen player (using class hook, not browser fullscreen)
## v1.5.1
* Fix for event listeners being duplicated on source change
# v1.5.0
* Vimeo support (fixes #8)
* New options for initialization (you can now pass a selector, HTMLElement or NodeList) (fixes #118)
* Switched to BEM methodology (you will need to change CSS and probably HTML)
* Decoupled CSS and JS hooks (fixes #129)
* Custom controls container (fixes #98)
* Fix for private/incognito mode local storage bug (fixes #131)
* UMD module setup (fixes #121)
* Specify iframe title for Vimeo and YouTube (fixes #124)
* Better handling of mission controls (fixes #132)
* Retain classname on source change (fixes #120)
* Increased thumb size on seek (partially fixes #130)
* Passing no argument to `source` api method, now returns current source (by @gurupras)
* Ability to add custom handlers to controls prior to Plyr bindings (by @gurupras)
* Keyboard navigation improvements (focus on seek, focus trap in fullscreen) (fixes #135)
## v1.3.5
* Fixed bug with API use on basic supported browsers
## v1.3.4
* Code cleanup by @calvintam236
## v1.3.3
* Removed captions being read by screen readers
## v1.3.2
* Voiceover fix for captions
## v1.3.1
* ARIA improvements for captions being read
## v1.3.0
* Internationalization support (i18n) using default controls (required markup changes to controls)
* ARIA enhancements for controls (required markup changes to controls)
* Captions legibility improvements
* YouTube bug fixes
## v1.2.6
* SASS updates and fixes (cheers @ChristianPV)
## v1.2.5
* Fix for YouTube quality (let them decide quality)
## v1.2.4
* Fix for omitted kind attribute on <track> (fixes #88)
## v1.2.3
* Fix for YouTube on iPhone or unsupported browsers (fallback to YouTube native)
* Docs tidy up
* Fullscreen for Safari fix (fixes #96)
## v1.2.2
* Fix for :focus keyboard vs mouse (fixes #61)
* Fix for caption positioning in full screen (fixes #92)
## v1.2.1
* Tooltip bug fix
# v1.2.0
* Added YouTube support
## v1.1.13
* Added icon prefix option for when using default controls
## v1.1.13
* Logic tweaks for hiding controls in fullscreen
## v1.1.12
* Bug fix for Chrome Canary
## v1.1.11
* Bug fix
## v1.1.10
* Bug fix
## v1.1.9
* Bug fix for 1.1.8
## v1.1.8
* setVolume API method improvements (fixes #83)
## v1.1.7
* Restore classname on destroy()
## v1.1.6
* New API methods (fixes #77), Fix for non strict mode (fixes #78)
## v1.1.5
* Fix for incorrect `isFullscreen()` return value in Mozilla (fixes #38)
## v1.1.4
* Minor bug fixes
## v1.1.3
* Fixes for random id used in controls with multiple instances and one call to setup
* Audio player UI improvements
## v1.1.2
* Added an onSetup callback option
* Added fullscreen API methods `toggleFullscreen()` (must be user iniated), and `isFullscreen()`
## v1.1.1
* Fix for unsupported browser handling
* Fix for config.controls having no effect
## v1.1.0
* Added config option to set which controls are shown (if using the default controls html) and better handling of missing controls
## v1.0.31
* Display duration on `metadataloaded`
## v1.0.30
* Fixed bug with media longer than 60 minutes (fixes #69)
## v1.0.29
* Added option to hide controls on fullscreen (default `true`) while palying, after 1s. Pause, mouse hover on progress, or focus on a child control re-shows the controls. On touch a tap of the video (which plays/pauses the video by default) is required. (fixes #47)
* Fixed a bug with caption toggle in 1.0.28
## v1.0.28
* Added API support for browsers that don't have full plyr support (pretty much <=IE9 and `<video>` on iPhone/iPod)
## v1.0.27
* Keyboard accessibility improvements (fixes #66)
## v1.0.26
* Fixes for SASS (cheers @brunowego)
* Indentation reset to 4 spaces
## v1.0.25
* Fixes for iOS volume controls (hidden)
* Classnames for left/right controls changed
## v1.0.24
* Added tooltip option to display labels as tooltips (fixes #50)
## v1.0.23
* Handling loading states in the UI (fixes #36)
## v1.0.22
* Added support() API method for checking mimetype support
* Added source() API method for setting media source(s) (fixes #44)
* Added poster() API method for setting poster source
* Refactored captions logic for manual captions
## v1.0.21
* Added an <input type="range"> for seeking to improve experience (and support dragging) (fixes #40, #42)
* Icons for restart and captions improved (and some IDs changed) (fixes #49)
## v1.0.20
* Default controls included (Fixes #45)
* Volume changes on `input` as well as `change` (fixes #43)
* Fix for undefined Play text
* License changed to MIT
## v1.0.19
* Fixed firefox fullscreen issue (fixes #38)
## v1.0.18
* Added CDN references
## v1.0.17
* SASS support added (thanks to @brunowego)
* Docs completely separated to avoid any confusion
* New gulp tasks (will add more documentation for this)
## v1.0.16
* Aria label is now dynamic
## v1.0.15
* Fix for seek time display in controls
* More documentation for controls html
## v1.0.14
* Minor change for bootstrap compatibility
## v1.0.13
* Minor tweaks
## v1.0.12
* Handle native events (issue #34)
## v1.0.11
* Bug fixes for fullscreen mode
## v1.0.10
* Bower includes src files now
* Folder re-arrangement
## v1.0.9
* Added buffer progress bar
* Fixed Safari 8 caption track (it needs to be removed from the DOM like in Safari 7)
* Added validation (it works or it doesn't basically) of the `html` option passed
## v1.0.8
* Bug fix
## v1.0.7
* Storing user selected volume in local storage
## v1.0.6
* Fullscreen fallback for older browsers to use "full window"
## v1.0.5
* More minor bug fixes and improvements
## v1.0.4
* Fixed caption legibility issues
## v1.0.3
* Minor bug fixes
## v1.0.2
* Added OGG to <audio> example for Firefox
* Fixed IE11 fullscreen issues
## v1.0.1
* Bug fixes for IE (as per usual)
* Added CSS hooks for media type
* Return instances of Plyr to the element
## v1.0.0
* Initial release

113
controls.md Normal file
View File

@@ -0,0 +1,113 @@
# Controls
This is the markup that is rendered for the Plyr controls. You can use the default controls or provide a customized version of markup based on your needs.
## Internationalization using default controls
You can provide an `i18n` object as one of your options when initialising the plugin which we be used when rendering the controls.
### Example
```javascript
i18n: {
restart: "Restart",
rewind: "Rewind {seektime} secs",
play: "Play",
pause: "Pause",
forward: "Forward {seektime} secs",
buffered: "buffered",
currentTime: "Current time",
duration: "Duration",
volume: "Volume",
toggleMute: "Toggle Mute",
toggleCaptions: "Toggle Captions",
toggleFullscreen: "Toggle Fullscreen"
}
```
Note: `{seektime}` will be replaced with your configured seek time or the default. For example "Forward {seektime} secs" would render as "Forward 10 secs".
## Using custom HTML
You can specify the HTML for the controls using the `html` option.
The classes and data attributes used in your template should match the `selectors` option.
You need to add several placeholders to your html template that are replaced when rendering:
- `{id}` - the dynamically generated ID for the player (for form controls)
- `{seektime}` - the seek time specified in options for fast forward and rewind
- `{title}` - the title of your media, if specified
You can include only the controls you need when specifying custom html.
### Example
This is an example `html` option with all controls.
```javascript
var controls = ["<div class='plyr__controls'>",
"<button type='button' data-plyr='restart'>",
"<svg><use xlink:href='#plyr-restart'></use></svg>",
"<span class='plyr__sr-only'>Restart</span>",
"</button>",
"<button type='button' data-plyr='rewind'>",
"<svg><use xlink:href='#plyr-rewind'></use></svg>",
"<span class='plyr__sr-only'>Rewind {seektime} secs</span>",
"</button>",
"<button type='button' data-plyr='play'>",
"<svg><use xlink:href='#plyr-play'></use></svg>",
"<span class='plyr__sr-only'>Play</span>",
"</button>",
"<button type='button' data-plyr='pause'>",
"<svg><use xlink:href='#plyr-pause'></use></svg>",
"<span class='plyr__sr-only'>Pause</span>",
"</button>",
"<button type='button' data-plyr='fast-forward'>",
"<svg><use xlink:href='#plyr-fast-forward'></use></svg>",
"<span class='plyr__sr-only'>Forward {seektime} secs</span>",
"</button>",
"<span class='plyr__progress'>",
"<label for='seek{id}' class='plyr__sr-only'>Seek</label>",
"<input id='seek{id}' class='plyr__progress--seek' type='range' min='0' max='100' step='0.1' value='0' data-plyr='seek'>",
"<progress class='plyr__progress--played' max='100' value='0' role='presentation'></progress>",
"<progress class='plyr__progress--buffer' max='100' value='0'>",
"<span>0</span>% buffered",
"</progress>",
"<span class='plyr__tooltip'>00:00</span>",
"</span>",
"<span class='plyr__time'>",
"<span class='plyr__sr-only'>Current time</span>",
"<span class='plyr__time--current'>00:00</span>",
"</span>",
"<span class='plyr__time'>",
"<span class='plyr__sr-only'>Duration</span>",
"<span class='plyr__time--duration'>00:00</span>",
"</span>",
"<button type='button' data-plyr='mute'>",
"<svg class='icon--muted'><use xlink:href='#plyr-muted'></use></svg>",
"<svg><use xlink:href='#plyr-volume'></use></svg>",
"<span class='plyr__sr-only'>Toggle Mute</span>",
"</button>",
"<span class='plyr__volume'>",
"<label for='volume{id}' class='plyr__sr-only'>Volume</label>",
"<input id='volume{id}' class='plyr__volume--input' type='range' min='0' max='10' value='5' data-plyr='volume'>",
"<progress class='plyr__volume--display' max='10' value='0' role='presentation'></progress>",
"</span>",
"<button type='button' data-plyr='captions'>",
"<svg class='icon--captions-on'><use xlink:href='#plyr-captions-on'></use></svg>",
"<svg><use xlink:href='#plyr-captions-off'></use></svg>",
"<span class='plyr__sr-only'>Toggle Captions</span>",
"</button>",
"<button type='button' data-plyr='fullscreen'>",
"<svg class='icon--exit-fullscreen'><use xlink:href='#plyr-exit-fullscreen'></use></svg>",
"<svg><use xlink:href='#plyr-enter-fullscreen'></use></svg>",
"<span class='plyr__sr-only'>Toggle Fullscreen</span>",
"</button>",
"</div>"].join("");
// Setup the player
plyr.setup('.js-player', {
html: controls
});
```

1
demo/dist/demo.css vendored Normal file

File diff suppressed because one or more lines are too long

3
demo/dist/demo.js vendored Normal file
View File

@@ -0,0 +1,3 @@
!function(){"use strict";var e,t,o,i,r,n;document.addEventListener("DOMContentLoaded",function(){window.shr&&window.shr.setup({count:{classname:"button__count"}});document.addEventListener("focusout",function(e){e.target.classList.remove("tab-focus")}),document.addEventListener("keydown",function(e){9===e.keyCode&&window.setTimeout(function(){document.activeElement.classList.add("tab-focus")},0)});var e=new window.Plyr("#player",{debug:!0,title:"View From A Blue Moon",iconUrl:"../dist/plyr.svg",keyboard:{global:!0},tooltips:{controls:!0},captions:{active:!0},keys:{google:"AIzaSyDrNwtN3nLH_8rjCmu5Wq3ZCm4MNAVdc0c"},ads:{enabled:!0}});window.player=e;var t=document.querySelectorAll("[data-source]"),o={video:"video",audio:"audio",youtube:"youtube",vimeo:"vimeo"},i=window.location.hash.replace("#",""),r=window.history&&window.history.pushState;function n(e,t,o){e&&e.classList[o?"add":"remove"](t)}function a(r,a){if(r in o&&(a||r!==i)&&(i.length||r!==o.video)){switch(r){case o.video:e.source={type:"video",title:"View From A Blue Moon",sources:[{src:"https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.mp4",type:"video/mp4"}],poster:"https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.jpg",tracks:[{kind:"captions",label:"English",srclang:"en",src:"https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.en.vtt",default:!0},{kind:"captions",label:"French",srclang:"fr",src:"https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.fr.vtt"}]};break;case o.audio:e.source={type:"audio",title:"Kishi Bashi &ndash; &ldquo;It All Began With A Burst&rdquo;",sources:[{src:"https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.mp3",type:"audio/mp3"},{src:"https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.ogg",type:"audio/ogg"}]};break;case o.youtube:e.source={type:"video",title:"View From A Blue Moon",sources:[{src:"https://youtube.com/watch?v=bTqVqk7FSmY",provider:"youtube"}]};break;case o.vimeo:e.source={type:"video",sources:[{src:"https://vimeo.com/76979871",provider:"vimeo"}]}}i=r,Array.from(t).forEach(function(e){return n(e.parentElement,"active",!1)}),n(document.querySelector('[data-source="'+r+'"]'),"active",!0),Array.from(document.querySelectorAll(".plyr__cite")).forEach(function(e){e.setAttribute("hidden","")}),document.querySelector(".plyr__cite--"+r).removeAttribute("hidden")}}if(Array.from(t).forEach(function(e){e.addEventListener("click",function(){var t=e.getAttribute("data-source");a(t),r&&window.history.pushState({type:t},"","#"+t)})}),window.addEventListener("popstate",function(e){e.state&&"type"in e.state&&a(e.state.type)}),r){var s=!i.length;s&&(i=o.video),i in o&&window.history.replaceState({type:i},"",s?"":"#"+i),i!==o.video&&a(i,!0)}}),"plyr.io"===window.location.host&&(e=window,t=document,o="script",i="ga",e.GoogleAnalyticsObject=i,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,r=t.createElement(o),n=t.getElementsByTagName(o)[0],r.async=1,r.src="//www.google-analytics.com/analytics.js",n.parentNode.insertBefore(r,n),window.ga("create","UA-40881672-11","auto"),window.ga("send","pageview"))}();
//# sourceMappingURL=demo.js.map

1
demo/dist/demo.js.map vendored Normal file

File diff suppressed because one or more lines are too long

26
demo/error.html Normal file
View File

@@ -0,0 +1,26 @@
<!doctype html>
<html lang="en" class="error">
<head>
<meta charset="utf-8" />
<title>Doh. Looks like something went wrong.</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Docs styles -->
<link rel="stylesheet" href="dist/error.css">
<!-- Preload -->
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-light.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-medium.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-bold.woff2">
</head>
<body>
<main>
<h1>Doh.</h1>
<p>Looks like something went wrong.</p>
<a href="javascript:history.back()" class="button">Go back</a>
</main>
</body>
</html>

188
demo/index.html Normal file
View File

@@ -0,0 +1,188 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Plyr - A simple, customizable HTML5 Video, Audio, YouTube and Vimeo player</title>
<meta name="description" property="og:description" content="A simple HTML5 media player with custom controls and WebVTT captions.">
<meta name="author" content="Sam Potts">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Icons -->
<link rel="icon" href="https://cdn.plyr.io/static/icons/favicon.ico">
<link rel="icon" type="image/png" href="https://cdn.plyr.io/static/icons/32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.plyr.io/static/icons/16x16.png" sizes="16x16">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.plyr.io/static/icons/180x180.png">
<!-- Opengraph -->
<meta property="og:title" content="Plyr - A simple, customizable HTML5 Video, Audio, YouTube and Vimeo player">
<meta property="og:site_name" content="Plyr">
<meta property="og:url" content="https://plyr.io">
<meta property="og:image" content="https://cdn.plyr.io/static/icons/1200x630.png">
<!-- Twitter -->
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@sam_potts">
<meta name="twitter:creator" content="@sam_potts">
<meta name="twitter:card" content="summary_large_image">
<!-- Docs styles -->
<link rel="stylesheet" href="dist/demo.css">
<!-- Preload -->
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-light.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-medium.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-bold.woff2">
</head>
<body>
<div class="grid">
<header>
<h1>Plyr</h1>
<p>A simple, accessible and customisable media player for
<button type="button" class="faux-link" data-source="video">
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>Video</button>,
<button type="button" class="faux-link" data-source="audio">
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>Audio</button>,
<button type="button" class="faux-link" data-source="youtube">
<svg class="icon" role="presentation">
<title>YouTube</title>
<path d="M15.8,4.8c-0.2-1.3-0.8-2.2-2.2-2.4C11.4,2,8,2,8,2S4.6,2,2.4,2.4C1,2.6,0.3,3.5,0.2,4.8C0,6.1,0,8,0,8
s0,1.9,0.2,3.2c0.2,1.3,0.8,2.2,2.2,2.4C4.6,14,8,14,8,14s3.4,0,5.6-0.4c1.4-0.3,2-1.1,2.2-2.4C16,9.9,16,8,16,8S16,6.1,15.8,4.8z
M6,11V5l5,3L6,11z"></path>
</svg>YouTube</button> and
<button type="button" class="faux-link" data-source="vimeo">
<svg class="icon" role="presentation">
<title>Vimeo</title>
<path d="M16,4.3c-0.1,1.6-1.2,3.7-3.3,6.4c-2.2,2.8-4,4.2-5.5,4.2c-0.9,0-1.7-0.9-2.4-2.6C4,9.9,3.4,5,2,5
C1.9,5,1.5,5.3,0.8,5.8L0,4.8c0.8-0.7,3.5-3.4,4.7-3.5C5.9,1.2,6.7,2,7,3.8c0.3,2,0.8,6.1,1.8,6.1c0.9,0,2.5-3.4,2.6-4
c0.1-0.9-0.3-1.9-2.3-1.1c0.8-2.6,2.3-3.8,4.5-3.8C15.3,1.1,16.1,2.2,16,4.3z"></path>
</svg>Vimeo</button>
</p>
<p>Premium video monitization from
<a href="https://vi.ai/publisher-video-monetization/" target="_blank" class="no-border">
<img src="https://cdn.plyr.io/static/vi-logo-24x24.svg" alt="ai.vi">
<span class="sr-only">ai.vi</span>
</a>
</p>
<div class="call-to-action">
<span class="button--with-count">
<a href="https://github.com/sampotts/plyr" target="_blank" class="button" data-shr-network="github">
<svg class="icon" role="presentation">
<title>GitHub</title>
<path d="M8,0.2c-4.4,0-8,3.6-8,8c0,3.5,2.3,6.5,5.5,7.6
C5.9,15.9,6,15.6,6,15.4c0-0.2,0-0.7,0-1.4C3.8,14.5,3.3,13,3.3,13c-0.4-0.9-0.9-1.2-0.9-1.2c-0.7-0.5,0.1-0.5,0.1-0.5
c0.8,0.1,1.2,0.8,1.2,0.8C4.4,13.4,5.6,13,6,12.8c0.1-0.5,0.3-0.9,0.5-1.1c-1.8-0.2-3.6-0.9-3.6-4c0-0.9,0.3-1.6,0.8-2.1
c-0.1-0.2-0.4-1,0.1-2.1c0,0,0.7-0.2,2.2,0.8c0.6-0.2,1.3-0.3,2-0.3c0.7,0,1.4,0.1,2,0.3c1.5-1,2.2-0.8,2.2-0.8
c0.4,1.1,0.2,1.9,0.1,2.1c0.5,0.6,0.8,1.3,0.8,2.1c0,3.1-1.9,3.7-3.7,3.9C9.7,12,10,12.5,10,13.2c0,1.1,0,1.9,0,2.2
c0,0.2,0.1,0.5,0.6,0.4c3.2-1.1,5.5-4.1,5.5-7.6C16,3.8,12.4,0.2,8,0.2z"></path>
</svg>
Download on GitHub
</a>
</span>
</div>
</header>
<main>
<video controls crossorigin playsinline poster="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.jpg" id="player">
<!-- Video files -->
<source src="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.mp4" type="video/mp4">
<source src="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.webm" type="video/webm">
<!-- Text track file -->
<track kind="captions" label="English" srclang="en" src="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.en.vtt"
default>
<track kind="captions" label="Français" srclang="fr" src="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.fr.vtt">
<!-- Fallback for browsers that don't support the <video> element -->
<a href="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.mp4" download>Download</a>
</video>
<ul>
<li class="plyr__cite plyr__cite--video" hidden>
<small>
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>
<a href="http://viewfromabluemoon.com/" target="_blank">View From A Blue Moon</a> &copy; Brainfarm
</small>
</li>
<li class="plyr__cite plyr__cite--audio" hidden>
<small>
<svg class="icon" title="HTML5">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>
<a href="http://www.kishibashi.com/" target="_blank">Kishi Bashi &ndash; &ldquo;It All Began With A Burst&rdquo;</a> &copy; Kishi Bashi
</small>
</li>
<li class="plyr__cite plyr__cite--youtube" hidden>
<small>
<a href="https://www.youtube.com/watch?v=bTqVqk7FSmY" target="_blank">View From A Blue Moon</a> on&nbsp;
<span class="color--youtube">
<svg class="icon" role="presentation">
<title>YouTube</title>
<path d="M15.8,4.8c-0.2-1.3-0.8-2.2-2.2-2.4C11.4,2,8,2,8,2S4.6,2,2.4,2.4C1,2.6,0.3,3.5,0.2,4.8C0,6.1,0,8,0,8
s0,1.9,0.2,3.2c0.2,1.3,0.8,2.2,2.2,2.4C4.6,14,8,14,8,14s3.4,0,5.6-0.4c1.4-0.3,2-1.1,2.2-2.4C16,9.9,16,8,16,8S16,6.1,15.8,4.8z
M6,11V5l5,3L6,11z"></path>
</svg>YouTube
</span>
</small>
</li>
<li class="plyr__cite plyr__cite--vimeo" hidden>
<small>
<a href="https://vimeo.com/ondemand/viewfromabluemoon4k" target="_blank">View From A Blue Moon</a> on&nbsp;
<span class="color--vimeo">
<svg class="icon" role="presentation">
<title>Vimeo</title>
<path d="M16,4.3c-0.1,1.6-1.2,3.7-3.3,6.4c-2.2,2.8-4,4.2-5.5,4.2c-0.9,0-1.7-0.9-2.4-2.6C4,9.9,3.4,5,2,5
C1.9,5,1.5,5.3,0.8,5.8L0,4.8c0.8-0.7,3.5-3.4,4.7-3.5C5.9,1.2,6.7,2,7,3.8c0.3,2,0.8,6.1,1.8,6.1c0.9,0,2.5-3.4,2.6-4
c0.1-0.9-0.3-1.9-2.3-1.1c0.8-2.6,2.3-3.8,4.5-3.8C15.3,1.1,16.1,2.2,16,4.3z"></path>
</svg>Vimeo
</span>
</small>
</li>
</ul>
</main>
</div>
<aside>
<svg class="icon">
<title>Twitter</title>
<path d="M16,3c-0.6,0.3-1.2,0.4-1.9,0.5c0.7-0.4,1.2-1,1.4-1.8c-0.6,0.4-1.3,0.6-2.1,0.8c-0.6-0.6-1.5-1-2.4-1
C9.3,1.5,7.8,3,7.8,4.8c0,0.3,0,0.5,0.1,0.7C5.2,5.4,2.7,4.1,1.1,2.1c-0.3,0.5-0.4,1-0.4,1.7c0,1.1,0.6,2.1,1.5,2.7
c-0.5,0-1-0.2-1.5-0.4c0,0,0,0,0,0c0,1.6,1.1,2.9,2.6,3.2C3,9.4,2.7,9.4,2.4,9.4c-0.2,0-0.4,0-0.6-0.1c0.4,1.3,1.6,2.3,3.1,2.3
c-1.1,0.9-2.5,1.4-4.1,1.4c-0.3,0-0.5,0-0.8,0c1.5,0.9,3.2,1.5,5,1.5c6,0,9.3-5,9.3-9.3c0-0.1,0-0.3,0-0.4C15,4.3,15.6,3.7,16,3z"></path>
</svg>
<p>If you think Plyr's good,
<a href="https://twitter.com/intent/tweet?text=A+simple+HTML5+media+player+with+custom+controls+and+WebVTT+captions.&url=http%3A%2F%2Fplyr.io&via=Sam_Potts"
target="_blank" data-shr-network="twitter">tweet it</a>
</p>
</aside>
<!-- Polyfills -->
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=es6,Array.prototype.includes,CustomEvent,fetch"></script>
<!-- Plyr core script -->
<script src="../dist/plyr.js"></script>
<!-- Sharing libary (https://shr.one) -->
<script src="https://cdn.shr.one/1.0.1/shr.js"></script>
<!-- Rangetouch to fix <input type="range"> on touch devices (see https://rangetouch.com) -->
<script src="https://cdn.rangetouch.com/1.0.1/rangetouch.js" async></script>
<!-- Docs script -->
<script src="dist/demo.js"></script>
</body>
</html>

184
demo/index.local.html Normal file
View File

@@ -0,0 +1,184 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Plyr - A simple, customizable HTML5 Video, Audio, YouTube and Vimeo player</title>
<meta name="description" property="og:description" content="A simple HTML5 media player with custom controls and WebVTT captions.">
<meta name="author" content="Sam Potts">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Icons -->
<link rel="icon" href="https://cdn.plyr.io/static/icons/favicon.ico">
<link rel="icon" type="image/png" href="https://cdn.plyr.io/static/icons/32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="https://cdn.plyr.io/static/icons/16x16.png" sizes="16x16">
<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.plyr.io/static/icons/180x180.png">
<!-- Opengraph -->
<meta property="og:title" content="Plyr - A simple, customizable HTML5 Video, Audio, YouTube and Vimeo player">
<meta property="og:site_name" content="Plyr">
<meta property="og:url" content="https://plyr.io">
<meta property="og:image" content="https://cdn.plyr.io/static/icons/1200x630.png">
<!-- Twitter -->
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@sam_potts">
<meta name="twitter:creator" content="@sam_potts">
<meta name="twitter:card" content="summary_large_image">
<!-- Docs styles -->
<link rel="stylesheet" href="dist/demo.css">
<!-- Preload -->
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-light.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-medium.woff2">
<link rel="preload" as="font" crossorigin type="font/woff2" href="https://cdn.plyr.io/static/fonts/gordita-bold.woff2">
</head>
<body>
<div class="grid">
<header>
<h1>Plyr</h1>
<p>A simple, accessible and customisable media player for
<button type="button" class="faux-link" data-source="video">
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>Video</button>,
<button type="button" class="faux-link" data-source="audio">
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>Audio</button>,
<button type="button" class="faux-link" data-source="youtube">
<svg class="icon" role="presentation">
<title>YouTube</title>
<path d="M15.8,4.8c-0.2-1.3-0.8-2.2-2.2-2.4C11.4,2,8,2,8,2S4.6,2,2.4,2.4C1,2.6,0.3,3.5,0.2,4.8C0,6.1,0,8,0,8
s0,1.9,0.2,3.2c0.2,1.3,0.8,2.2,2.2,2.4C4.6,14,8,14,8,14s3.4,0,5.6-0.4c1.4-0.3,2-1.1,2.2-2.4C16,9.9,16,8,16,8S16,6.1,15.8,4.8z
M6,11V5l5,3L6,11z"></path>
</svg>YouTube</button> and
<button type="button" class="faux-link" data-source="vimeo">
<svg class="icon" role="presentation">
<title>Vimeo</title>
<path d="M16,4.3c-0.1,1.6-1.2,3.7-3.3,6.4c-2.2,2.8-4,4.2-5.5,4.2c-0.9,0-1.7-0.9-2.4-2.6C4,9.9,3.4,5,2,5
C1.9,5,1.5,5.3,0.8,5.8L0,4.8c0.8-0.7,3.5-3.4,4.7-3.5C5.9,1.2,6.7,2,7,3.8c0.3,2,0.8,6.1,1.8,6.1c0.9,0,2.5-3.4,2.6-4
c0.1-0.9-0.3-1.9-2.3-1.1c0.8-2.6,2.3-3.8,4.5-3.8C15.3,1.1,16.1,2.2,16,4.3z"></path>
</svg>Vimeo</button>
</p>
<!--<p>Monetization options provided by
<a href="https://vi.ai" target="_blank">vi.ai</a>
</p>-->
<div class="call-to-action">
<span class="button--with-count">
<a href="https://github.com/sampotts/plyr" target="_blank" class="button" data-shr-network="github">
<svg class="icon" role="presentation">
<title>GitHub</title>
<path d="M8,0.2c-4.4,0-8,3.6-8,8c0,3.5,2.3,6.5,5.5,7.6
C5.9,15.9,6,15.6,6,15.4c0-0.2,0-0.7,0-1.4C3.8,14.5,3.3,13,3.3,13c-0.4-0.9-0.9-1.2-0.9-1.2c-0.7-0.5,0.1-0.5,0.1-0.5
c0.8,0.1,1.2,0.8,1.2,0.8C4.4,13.4,5.6,13,6,12.8c0.1-0.5,0.3-0.9,0.5-1.1c-1.8-0.2-3.6-0.9-3.6-4c0-0.9,0.3-1.6,0.8-2.1
c-0.1-0.2-0.4-1,0.1-2.1c0,0,0.7-0.2,2.2,0.8c0.6-0.2,1.3-0.3,2-0.3c0.7,0,1.4,0.1,2,0.3c1.5-1,2.2-0.8,2.2-0.8
c0.4,1.1,0.2,1.9,0.1,2.1c0.5,0.6,0.8,1.3,0.8,2.1c0,3.1-1.9,3.7-3.7,3.9C9.7,12,10,12.5,10,13.2c0,1.1,0,1.9,0,2.2
c0,0.2,0.1,0.5,0.6,0.4c3.2-1.1,5.5-4.1,5.5-7.6C16,3.8,12.4,0.2,8,0.2z"></path>
</svg>
Download on GitHub
</a>
</span>
</div>
</header>
<main>
<video controls crossorigin playsinline poster="media/View_From_A_Blue_Moon_Trailer-HD.jpg" id="player">
<!-- Video files -->
<source src="media/View_From_A_Blue_Moon_Trailer-HD.mp4" type="video/mp4">
<!--<source src="media/View_From_A_Blue_Moon_Trailer-UHD.mp4" type="video/mp4">-->
<!-- Text track file -->
<track kind="captions" label="English" srclang="en" src="media/View_From_A_Blue_Moon_Trailer-HD.en.vtt" default>
<track kind="captions" label="Français" srclang="fr" src="media/View_From_A_Blue_Moon_Trailer-HD.fr.vtt">
<!-- Fallback for browsers that don't support the <video> element -->
<a href="media/View_From_A_Blue_Moon_Trailer-HD.mp4" download>Download</a>
</video>
<ul>
<li class="plyr__cite plyr__cite--video" hidden>
<small>
<svg class="icon">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>
<a href="http://viewfromabluemoon.com/" target="_blank">View From A Blue Moon</a> &copy; Brainfarm
</small>
</li>
<li class="plyr__cite plyr__cite--audio" hidden>
<small>
<svg class="icon" title="HTML5">
<title>HTML5</title>
<path d="M14.738.326C14.548.118 14.28 0 14 0H2c-.28 0-.55.118-.738.326S.98.81 1.004 1.09l1 11c.03.317.208.603.48.767l5 3c.16.095.338.143.516.143s.356-.048.515-.143l5-3c.273-.164.452-.45.48-.767l1-11c.026-.28-.067-.557-.257-.764zM12 4H6v2h6v5.72l-4 1.334-4-1.333V9h2v1.28l2 .666 2-.667V8H4V2h8v2z"></path>
</svg>
<a href="http://www.kishibashi.com/" target="_blank">Kishi Bashi &ndash; &ldquo;It All Began With A Burst&rdquo;</a> &copy; Kishi Bashi
</small>
</li>
<li class="plyr__cite plyr__cite--youtube" hidden>
<small>
<a href="https://www.youtube.com/watch?v=bTqVqk7FSmY" target="_blank">View From A Blue Moon</a> on&nbsp;
<span class="color--youtube">
<svg class="icon" role="presentation">
<title>YouTube</title>
<path d="M15.8,4.8c-0.2-1.3-0.8-2.2-2.2-2.4C11.4,2,8,2,8,2S4.6,2,2.4,2.4C1,2.6,0.3,3.5,0.2,4.8C0,6.1,0,8,0,8
s0,1.9,0.2,3.2c0.2,1.3,0.8,2.2,2.2,2.4C4.6,14,8,14,8,14s3.4,0,5.6-0.4c1.4-0.3,2-1.1,2.2-2.4C16,9.9,16,8,16,8S16,6.1,15.8,4.8z
M6,11V5l5,3L6,11z"></path>
</svg>YouTube
</span>
</small>
</li>
<li class="plyr__cite plyr__cite--vimeo" hidden>
<small>
<a href="https://vimeo.com/ondemand/viewfromabluemoon4k" target="_blank">View From A Blue Moon</a> on&nbsp;
<span class="color--vimeo">
<svg class="icon" role="presentation">
<title>Vimeo</title>
<path d="M16,4.3c-0.1,1.6-1.2,3.7-3.3,6.4c-2.2,2.8-4,4.2-5.5,4.2c-0.9,0-1.7-0.9-2.4-2.6C4,9.9,3.4,5,2,5
C1.9,5,1.5,5.3,0.8,5.8L0,4.8c0.8-0.7,3.5-3.4,4.7-3.5C5.9,1.2,6.7,2,7,3.8c0.3,2,0.8,6.1,1.8,6.1c0.9,0,2.5-3.4,2.6-4
c0.1-0.9-0.3-1.9-2.3-1.1c0.8-2.6,2.3-3.8,4.5-3.8C15.3,1.1,16.1,2.2,16,4.3z"></path>
</svg>Vimeo
</span>
</small>
</li>
</ul>
</main>
</div>
<aside>
<svg class="icon">
<title>Twitter</title>
<path d="M16,3c-0.6,0.3-1.2,0.4-1.9,0.5c0.7-0.4,1.2-1,1.4-1.8c-0.6,0.4-1.3,0.6-2.1,0.8c-0.6-0.6-1.5-1-2.4-1
C9.3,1.5,7.8,3,7.8,4.8c0,0.3,0,0.5,0.1,0.7C5.2,5.4,2.7,4.1,1.1,2.1c-0.3,0.5-0.4,1-0.4,1.7c0,1.1,0.6,2.1,1.5,2.7
c-0.5,0-1-0.2-1.5-0.4c0,0,0,0,0,0c0,1.6,1.1,2.9,2.6,3.2C3,9.4,2.7,9.4,2.4,9.4c-0.2,0-0.4,0-0.6-0.1c0.4,1.3,1.6,2.3,3.1,2.3
c-1.1,0.9-2.5,1.4-4.1,1.4c-0.3,0-0.5,0-0.8,0c1.5,0.9,3.2,1.5,5,1.5c6,0,9.3-5,9.3-9.3c0-0.1,0-0.3,0-0.4C15,4.3,15.6,3.7,16,3z"></path>
</svg>
<p>If you think Plyr's good,
<a href="https://twitter.com/intent/tweet?text=A+simple+HTML5+media+player+with+custom+controls+and+WebVTT+captions.&url=http%3A%2F%2Fplyr.io&via=Sam_Potts"
target="_blank" data-shr-network="twitter">tweet it</a>
</p>
</aside>
<!-- Polyfills -->
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=es6,Array.prototype.includes,CustomEvent,fetch"></script>
<!-- Plyr core script -->
<script src="../dist/plyr.js"></script>
<!-- Sharing libary (https://shr.one) -->
<script src="https://cdn.shr.one/1.0.1/shr.js"></script>
<!-- Rangetouch to fix <input type="range"> on touch devices (see https://rangetouch.com) -->
<script src="https://cdn.rangetouch.com/1.0.1/rangetouch.js" async></script>
<!-- Docs script -->
<script src="dist/demo.js"></script>
</body>
</html>

View File

@@ -0,0 +1,29 @@
WEBVTT FILE
1
00:00:09.500 --> 00:00:12.000
The ocean floor rises 5 miles to the shores
2
00:00:12.001 --> 00:00:16.500
of what people call, the seven mile miracle
3
00:00:25.500 --> 00:00:28.000
What would it be like to be born on this island?
4
00:00:32.500 --> 00:00:34.500
To grow up on these shores
5
00:00:37.500 --> 00:00:40.000
To witness this water, every day
6
00:00:43.500 --> 00:00:46.000
You're about to meet someone, who did
7
00:02:45.500 --> 00:02:49.000
This is a film about John John Florence

View File

@@ -0,0 +1,29 @@
WEBVTT FILE
1
00:00:09.500 --> 00:00:12.000
Le fond de l'océan monte 5 miles des rives
2
00:00:12.001 --> 00:00:16.500
de ce que les gens appellent le miracle de sept mile
3
00:00:25.500 --> 00:00:28.000
Que serait-il d'être né sur cette île?
4
00:00:32.500 --> 00:00:34.500
Pour grandir sur ces rivages
5
00:00:37.500 --> 00:00:40.000
Pour assister à cette eau, tous les jours
6
00:00:43.500 --> 00:00:46.000
Vous êtes sur le point de rencontrer quelqu'un, qui ne
7
00:02:45.500 --> 00:02:49.000
Ceci est un film sur John John Florence

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

245
demo/src/js/demo.js Normal file
View File

@@ -0,0 +1,245 @@
// ==========================================================================
// Plyr.io demo
// This code is purely for the https://plyr.io website
// Please see readme.md in the root or github.com/sampotts/plyr
// ==========================================================================
document.addEventListener('DOMContentLoaded', () => {
if (window.shr) {
window.shr.setup({
count: {
classname: 'button__count',
},
});
}
// Setup tab focus
const tabClassName = 'tab-focus';
// Remove class on blur
document.addEventListener('focusout', event => {
event.target.classList.remove(tabClassName);
});
// Add classname to tabbed elements
document.addEventListener('keydown', event => {
if (event.keyCode !== 9) {
return;
}
// Delay the adding of classname until the focus has changed
// This event fires before the focusin event
window.setTimeout(() => {
document.activeElement.classList.add(tabClassName);
}, 0);
});
// Setup the player
const player = new window.Plyr('#player', {
debug: true,
title: 'View From A Blue Moon',
iconUrl: '../dist/plyr.svg',
keyboard: {
global: true,
},
tooltips: {
controls: true,
},
captions: {
active: true,
},
keys: {
google: 'AIzaSyDrNwtN3nLH_8rjCmu5Wq3ZCm4MNAVdc0c',
},
ads: {
enabled: true,
},
});
// Expose for testing
window.player = player;
// Setup type toggle
const buttons = document.querySelectorAll('[data-source]');
const types = {
video: 'video',
audio: 'audio',
youtube: 'youtube',
vimeo: 'vimeo',
};
let currentType = window.location.hash.replace('#', '');
const historySupport = window.history && window.history.pushState;
// Toggle class on an element
function toggleClass(element, className, state) {
if (element) {
element.classList[state ? 'add' : 'remove'](className);
}
}
// Set a new source
function newSource(type, init) {
// Bail if new type isn't known, it's the current type, or current type is empty (video is default) and new type is video
if (!(type in types) || (!init && type === currentType) || (!currentType.length && type === types.video)) {
return;
}
switch (type) {
case types.video:
player.source = {
type: 'video',
title: 'View From A Blue Moon',
sources: [{
src: 'https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.mp4',
type: 'video/mp4',
}],
poster: 'https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.jpg',
tracks: [
{
kind: 'captions',
label: 'English',
srclang: 'en',
src: 'https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.en.vtt',
default: true,
},
{
kind: 'captions',
label: 'French',
srclang: 'fr',
src: 'https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-HD.fr.vtt',
},
],
};
break;
case types.audio:
player.source = {
type: 'audio',
title: 'Kishi Bashi &ndash; &ldquo;It All Began With A Burst&rdquo;',
sources: [
{
src: 'https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.mp3',
type: 'audio/mp3',
},
{
src: 'https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.ogg',
type: 'audio/ogg',
},
],
};
break;
case types.youtube:
player.source = {
type: 'video',
title: 'View From A Blue Moon',
sources: [{
src: 'https://youtube.com/watch?v=bTqVqk7FSmY',
provider: 'youtube',
}],
};
break;
case types.vimeo:
player.source = {
type: 'video',
sources: [{
src: 'https://vimeo.com/76979871',
provider: 'vimeo',
}],
};
break;
default:
break;
}
// Set the current type for next time
currentType = type;
// Remove active classes
Array.from(buttons).forEach(button => toggleClass(button.parentElement, 'active', false));
// Set active on parent
toggleClass(document.querySelector(`[data-source="${type}"]`), 'active', true);
// Show cite
Array.from(document.querySelectorAll('.plyr__cite')).forEach(cite => {
cite.setAttribute('hidden', '');
});
document.querySelector(`.plyr__cite--${type}`).removeAttribute('hidden');
}
// Bind to each button
Array.from(buttons).forEach(button => {
button.addEventListener('click', () => {
const type = button.getAttribute('data-source');
newSource(type);
if (historySupport) {
window.history.pushState({ type }, '', `#${type}`);
}
});
});
// List for backwards/forwards
window.addEventListener('popstate', event => {
if (event.state && 'type' in event.state) {
newSource(event.state.type);
}
});
// On load
if (historySupport) {
const video = !currentType.length;
// If there's no current type set, assume video
if (video) {
currentType = types.video;
}
// Replace current history state
if (currentType in types) {
window.history.replaceState(
{
type: currentType,
},
'',
video ? '' : `#${currentType}`,
);
}
// If it's not video, load the source
if (currentType !== types.video) {
newSource(currentType, true);
}
}
});
// Google analytics
// For demo site (https://plyr.io) only
/* eslint-disable */
if (window.location.host === 'plyr.io') {
(function(i, s, o, g, r, a, m) {
i.GoogleAnalyticsObject = r;
i[r] =
i[r] ||
function() {
(i[r].q = i[r].q || []).push(arguments);
};
i[r].l = 1 * new Date();
a = s.createElement(o);
m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
window.ga('create', 'UA-40881672-11', 'auto');
window.ga('send', 'pageview');
}
/* eslint-enable */

View File

@@ -0,0 +1,46 @@
// ==========================================================================
// Plyr.io Demo Page
// ==========================================================================
@charset 'UTF-8';
// Settings
@import '../settings/breakpoints';
@import '../settings/colors';
@import '../settings/cosmetic';
@import '../settings/icons';
@import '../settings/layout';
@import '../settings/plyr';
@import '../settings/spacing';
@import '../settings/type';
// Libs
@import '../lib/fontface';
@import '../lib/animation';
@import '../lib/mixins';
@import '../lib/normalize';
@import '../lib/reset';
// Layout
@import '../layout/core';
@import '../layout/grid';
// Type
@import '../type/base';
@import '../type/headings';
// Components
@import '../components/buttons';
@import '../components/header';
@import '../components/icons';
@import '../components/links';
@import '../components/lists';
@import '../components/media';
@import '../components/navigation';
@import '../components/players';
// Plyr
@import '../../../../src/sass/plyr';
// Utils
@import '../utilities/cosmetic';
@import '../utilities/hidden';

View File

@@ -0,0 +1,29 @@
// ==========================================================================
// Plyr.io Error Page
// ==========================================================================
@charset 'UTF-8';
// Libs
@import '../lib/fontface';
@import '../lib/mixins';
@import '../lib/normalize';
@import '../lib/reset';
// Settings
@import '../settings/colors';
@import '../settings/cosmetic';
@import '../settings/icons';
@import '../settings/layout';
@import '../settings/spacing';
@import '../settings/type';
// Layout
@import '../layout/error';
// Type
@import '../type/base';
@import '../type/headings';
// Components
@import '../components/buttons';
@import '../components/links';

View File

@@ -0,0 +1,83 @@
// ==========================================================================
// Buttons
// ==========================================================================
// Shared
.button,
.button__count {
align-items: center;
background: #fff;
border: 0;
border-radius: $border-radius-base;
box-shadow: 0 1px 1px rgba(#000, 0.1);
color: $gray;
display: inline-flex;
padding: ($spacing-base * 0.75);
position: relative;
text-shadow: none;
user-select: none;
vertical-align: middle;
}
// Buttons
.button {
font-weight: $font-weight-bold;
padding-left: $spacing-base;
padding-right: $spacing-base;
transition: all 0.2s ease;
&:hover,
&:focus {
color: $gray-dark;
// Remove the underline/border
&::after {
display: none;
}
}
&:hover {
box-shadow: 0 2px 2px rgba(#000, 0.1);
transform: translateY(-1px);
}
&:focus {
outline: 0;
}
&.tab-focus {
@include tab-focus();
}
&:active {
transform: translateY(1px);
}
}
// Button group
.button--with-count {
display: inline-flex;
.button .icon {
flex-shrink: 0;
}
}
// Count bubble
.button__count {
animation: fadein 0.2s ease;
margin-left: ($spacing-base / 2);
&::before {
border: $arrow-size solid transparent;
border-left-width: 0;
border-right-color: #fff;
content: '';
height: 0;
position: absolute;
right: 100%;
top: 50%;
transform: translateY(-50%);
width: 0;
}
}

View File

@@ -0,0 +1,19 @@
// ==========================================================================
// Header
// ==========================================================================
header {
padding-bottom: $spacing-base;
text-align: center;
.call-to-action {
margin-top: ($spacing-base * 1.5);
}
@media only screen and (min-width: $screen-md) {
margin-right: ($spacing-base * 3);
max-width: 360px;
padding-bottom: ($spacing-base * 2);
text-align: left;
}
}

View File

@@ -0,0 +1,23 @@
// ==========================================================================
// Icons
// ==========================================================================
// Base size icon styles
.icon {
fill: currentColor;
height: $icon-size;
vertical-align: -3px;
width: $icon-size;
}
// Within elements
a svg,
button svg,
label svg {
pointer-events: none;
}
a .icon,
.btn .icon {
margin-right: floor($spacing-base / 3);
}

View File

@@ -0,0 +1,49 @@
// ==========================================================================
// Links
// ==========================================================================
// Make a <button> look like an <a>
button.faux-link {
@extend a; // stylelint-disable-line
@include cancel-button-styles();
}
// Links
a {
border-bottom: 1px dotted currentColor;
color: $color-link;
font-weight: $font-weight-bold;
position: relative;
text-decoration: none;
transition: all 0.2s ease;
&::after {
background: currentColor;
content: '';
height: 1px;
left: 50%;
position: absolute;
top: 100%;
transform: translateX(-50%);
transition: width 0.2s ease;
width: 0;
}
&:hover,
&:focus {
border-bottom-color: transparent;
outline: 0;
&::after {
width: 100%;
}
}
&.tab-focus {
@include tab-focus();
}
&.no-border::after {
display: none;
}
}

View File

@@ -0,0 +1,11 @@
// ==========================================================================
// Lists
// ==========================================================================
// Lists
ul,
li {
list-style: none;
margin: 0;
padding: 0;
}

View File

@@ -0,0 +1,10 @@
// ==========================================================================
// Basic media
// ==========================================================================
img,
video,
audio {
max-width: 100%;
vertical-align: middle;
}

View File

@@ -0,0 +1,9 @@
// ==========================================================================
// Navigation
// ==========================================================================
nav {
display: flex;
justify-content: center;
margin-bottom: $spacing-base;
}

View File

@@ -0,0 +1,49 @@
// ==========================================================================
// Examples
// ==========================================================================
// For non supported browsers
video {
max-width: 100%;
vertical-align: middle;
}
// Example players
.plyr {
border-radius: $border-radius-base;
box-shadow: 0 2px 5px rgba(#000, 0.2);
margin: $spacing-base auto;
&.plyr--audio {
max-width: 480px;
}
}
.plyr__video-wrapper::after {
border: 1px solid rgba(#000, 0.15);
border-radius: inherit;
bottom: 0;
content: '';
left: 0;
pointer-events: none;
position: absolute;
right: 0;
top: 0;
}
// Style full supported player
.plyr__cite {
display: none;
margin-top: $spacing-base;
.icon {
margin-right: ceil($spacing-base / 6);
}
}
.plyr--video:not(.plyr--youtube):not(.plyr--vimeo) ~ ul .plyr__cite--video,
.plyr--audio ~ ul .plyr__cite--audio,
.plyr--youtube ~ ul .plyr__cite--youtube,
.plyr--vimeo ~ ul .plyr__cite--vimeo {
display: block;
}

View File

@@ -0,0 +1,63 @@
// ==========================================================================
// Core
// ==========================================================================
html,
body {
display: flex;
width: 100%;
}
html {
background: $page-background;
background-attachment: fixed;
height: 100%;
}
body {
align-items: center;
display: flex;
flex-direction: column;
min-height: 100%;
}
.grid {
flex: 1;
overflow: auto;
}
main {
margin: auto;
text-align: center;
}
aside {
align-items: center;
background: #fff;
color: $gray;
display: flex;
flex-shrink: 0;
justify-content: center;
padding: ($spacing-base * 0.75);
position: relative;
text-align: center;
text-shadow: none;
width: 100%;
.icon {
fill: $color-twitter;
margin-right: ($spacing-base / 2);
}
p {
margin: 0;
}
a {
color: $color-twitter;
&.tab-focus {
@include tab-focus($color-twitter);
}
}
}

View File

@@ -0,0 +1,30 @@
// ==========================================================================
// Errors (AWS pages)
// ==========================================================================
// Error page
html.error,
.error body {
height: 100%;
}
html.error {
background: $page-background;
background-attachment: fixed;
}
.error body {
align-items: center;
display: flex;
width: 100%;
}
.error main {
padding: $spacing-base;
text-align: center;
width: 100%;
p {
@include font-size($font-size-large);
}
}

View File

@@ -0,0 +1,19 @@
// ==========================================================================
// Super basic grid
// ==========================================================================
.grid {
margin: 0 auto;
padding: $spacing-base;
@media only screen and (min-width: $screen-md) {
align-items: center;
display: flex;
max-width: $container-max-width;
width: 100%;
> * {
flex: 1;
}
}
}

View File

@@ -0,0 +1,13 @@
// ==========================================================================
// Animations
// ==========================================================================
// Fade
@keyframes fadein {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}

View File

@@ -0,0 +1,45 @@
// ==========================================================================
// Fonts
// ==========================================================================
@font-face {
font-display: swap;
font-family: 'Gordita';
font-style: normal;
font-weight: $font-weight-light;
src: url('https://cdn.plyr.io/static/fonts/gordita-light.woff2') format('woff2'), url('https://cdn.plyr.io/static/fonts/gordita-light.woff') format('woff');
}
@font-face {
font-display: swap;
font-family: 'Gordita';
font-style: normal;
font-weight: $font-weight-regular;
src: url('https://cdn.plyr.io/static/fonts/gordita-regular.woff2') format('woff2'),
url('https://cdn.plyr.io/static/fonts/gordita-regular.woff') format('woff');
}
@font-face {
font-display: swap;
font-family: 'Gordita';
font-style: normal;
font-weight: $font-weight-medium;
src: url('https://cdn.plyr.io/static/fonts/gordita-medium.woff2') format('woff2'),
url('https://cdn.plyr.io/static/fonts/gordita-medium.woff') format('woff');
}
@font-face {
font-display: swap;
font-family: 'Gordita';
font-style: normal;
font-weight: $font-weight-bold;
src: url('https://cdn.plyr.io/static/fonts/gordita-bold.woff2') format('woff2'), url('https://cdn.plyr.io/static/fonts/gordita-bold.woff') format('woff');
}
@font-face {
font-display: swap;
font-family: 'Gordita';
font-style: normal;
font-weight: $font-weight-black;
src: url('https://cdn.plyr.io/static/fonts/gordita-black.woff2') format('woff2'), url('https://cdn.plyr.io/static/fonts/gordita-black.woff') format('woff');
}

View File

@@ -0,0 +1,54 @@
// ==========================================================================
// Mixins
// ==========================================================================
// Convert a <button> into an <a>
// ---------------------------------------
@mixin cancel-button-styles() {
background: transparent;
border: 0;
border-radius: 0;
cursor: pointer;
font: inherit;
line-height: $line-height-base;
margin: 0;
padding: 0;
position: relative;
text-align: inherit;
text-shadow: inherit;
-moz-user-select: text; // stylelint-disable-line
vertical-align: baseline;
width: auto;
}
// Nicer focus styles
// ---------------------------------------
@mixin tab-focus($color: $tab-focus-default-color) {
box-shadow: 0 0 0 3px rgba($color, 0.35);
outline: 0;
}
// Use rems for font sizing
// Leave <body> at 100%/16px
// ---------------------------------------
@function calculate-rem($size) {
$rem: $size / 16;
@return #{$rem}rem;
}
@mixin font-size($size: 16) {
font-size: $size * 1px; // Fallback in px
font-size: calculate-rem($size);
}
// Font smoothing
// ---------------------------------------
@mixin font-smoothing($enabled: true) {
@if $enabled {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
} @else {
-moz-osx-font-smoothing: auto;
-webkit-font-smoothing: subpixel-antialiased;
}
}

450
demo/src/sass/lib/normalize.scss vendored Normal file
View File

@@ -0,0 +1,450 @@
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in
* IE on Windows Phone and in iOS.
*/
html {
line-height: 1.15; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
========================================================================== */
/**
* Remove the margin in all browsers (opinionated).
*/
body {
margin: 0;
}
/**
* Add the correct display in IE 9-.
*/
article,
aside,
footer,
header,
nav,
section {
display: block;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/* Grouping content
========================================================================== */
/**
* Add the correct display in IE 9-.
* 1. Add the correct display in IE.
*/
figcaption,
figure,
main {
/* 1 */
display: block;
}
/**
* Add the correct margin in IE 8.
*/
figure {
margin: 1em 40px;
}
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/* Text-level semantics
========================================================================== */
/**
* 1. Remove the gray background on active links in IE 10.
* 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
*/
a {
background-color: transparent; /* 1 */
-webkit-text-decoration-skip: objects; /* 2 */
}
/**
* 1. Remove the bottom border in Chrome 57- and Firefox 39-.
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}
/**
* Prevent the duplicate application of `bolder` by the next rule in Safari 6.
*/
b,
strong {
font-weight: inherit;
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct font style in Android 4.3-.
*/
dfn {
font-style: italic;
}
/**
* Add the correct background and color in IE 9-.
*/
mark {
background-color: #ff0;
color: #000;
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/* Embedded content
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
audio,
video {
display: inline-block;
}
/**
* Add the correct display in iOS 4-7.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Remove the border on images inside links in IE 10-.
*/
img {
border-style: none;
}
/**
* Hide the overflow in IE.
*/
svg:not(:root) {
overflow: hidden;
}
/* Forms
========================================================================== */
/**
* 1. Change the font styles in all browsers (opinionated).
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
font-family: sans-serif; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
}
/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input {
/* 1 */
overflow: visible;
}
/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select {
/* 1 */
text-transform: none;
}
/**
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
* controls in Android 4.
* 2. Correct the inability to style clickable types in iOS and Safari.
*/
button,
html [type='button'],
[type='reset'],
[type='submit'] {
-webkit-appearance: button; /* 2 */
}
/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Correct the padding in Firefox.
*/
fieldset {
padding: 0.35em 0.75em 0.625em;
}
/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
* `fieldset` elements in all browsers.
*/
legend {
box-sizing: border-box; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}
/**
* 1. Add the correct display in IE 9-.
* 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Remove the default vertical scrollbar in IE.
*/
textarea {
overflow: auto;
}
/**
* 1. Add the correct box sizing in IE 10-.
* 2. Remove the padding in IE 10-.
*/
[type='checkbox'],
[type='radio'] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type='search'] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
*/
[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/* Interactive
========================================================================== */
/*
* Add the correct display in IE 9-.
* 1. Add the correct display in Edge, IE, and Firefox.
*/
details,
menu {
display: block;
}
/*
* Add the correct display in all browsers.
*/
summary {
display: list-item;
}
/* Scripting
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
canvas {
display: inline-block;
}
/**
* Add the correct display in IE.
*/
template {
display: none;
}
/* Hidden
========================================================================== */
/**
* Add the correct display in IE 10-.
*/
[hidden] {
display: none;
}

View File

@@ -0,0 +1,11 @@
// ==========================================================================
// Resets
// ==========================================================================
// BORDER-BOX ALL THE THINGS!
// http://paulirish.com/2012/box-sizing-border-box-ftw/
*,
*::after,
*::before {
box-sizing: border-box;
}

View File

@@ -0,0 +1,6 @@
// ==========================================================================
// Breakpoints
// ==========================================================================
$screen-sm: 480px;
$screen-md: 768px;

View File

@@ -0,0 +1,28 @@
// ==========================================================================
// Colors
// ==========================================================================
// Greyscale
$gray-dark: #343f4a;
$gray: #55646b;
$gray-light: #cbd0d3;
$gray-lighter: #dbe3e8;
$off-white: #f2f5f7;
// Text
$color-text: #fff;
// Plyr
$color-brand-primary: #1aafff;
// Brands
$color-twitter: #4baaf4;
$color-youtube: #cc181e;
$color-vimeo: #19b7ed;
// Elements
$color-link: #fff;
$color-background: $color-brand-primary;
// Focus
$tab-focus-default-color: #fff;

View File

@@ -0,0 +1,12 @@
// ==========================================================================
// Misc cosmetic
// ==========================================================================
// Button count arrow size
$arrow-size: 5px;
// Radii
$border-radius-base: 4px;
// Background
$page-background: linear-gradient(to left top, lighten($color-background, 10%), darken($color-background, 20%));

View File

@@ -0,0 +1,5 @@
// ==========================================================================
// Icons
// ==========================================================================
$icon-size: 16px;

View File

@@ -0,0 +1,5 @@
// ==========================================================================
// Layout
// ==========================================================================
$container-max-width: 1280px;

View File

@@ -0,0 +1,18 @@
// ==========================================================================
// Plyr Settings
// ==========================================================================
// Font
$plyr-font-family: inherit;
// Sizes
$plyr-font-size-base: 13px;
$plyr-font-size-small: 12px;
$plyr-font-size-time: 11px;
$plyr-font-size-badges: 9px;
// Captions
$plyr-font-size-captions-base: $plyr-font-size-base;
$plyr-font-size-captions-small: $plyr-font-size-small;
$plyr-font-size-captions-medium: 18px;
$plyr-font-size-captions-large: 21px;

View File

@@ -0,0 +1,5 @@
// ==========================================================================
// Colors
// ==========================================================================
$spacing-base: 20px;

View File

@@ -0,0 +1,20 @@
// ==========================================================================
// Typography
// ==========================================================================
$font-sans-serif: 'Gordita', 'Avenir', 'Helvetica Neue', sans-serif;
$font-size-base: 15;
$font-size-small: 13;
$font-size-large: 18;
$font-size-h1: 64;
$font-weight-light: 300;
$font-weight-regular: 400;
$font-weight-medium: 500;
$font-weight-bold: 600;
$font-weight-black: 900;
$line-height-base: 1.75;
$letter-spacing-headings: -0.025em;

View File

@@ -0,0 +1,35 @@
// ==========================================================================
// Base
// ==========================================================================
// Set to 100% for rem sizing
html {
font-size: 100%;
}
body {
@include font-smoothing();
@include font-size($font-size-base);
color: $color-text;
font-family: $font-sans-serif;
font-weight: $font-weight-medium;
line-height: $line-height-base;
text-shadow: 0 1px 1px rgba(#000, 0.15);
}
button,
input,
select,
textarea {
font: inherit;
}
p,
small {
margin: 0 0 $spacing-base;
}
small {
@include font-size($font-size-small);
display: block;
}

View File

@@ -0,0 +1,10 @@
// ==========================================================================
// Headings
// ==========================================================================
h1 {
@include font-size($font-size-h1);
font-weight: $font-weight-light;
letter-spacing: $letter-spacing-headings;
margin: 0 0 ($spacing-base / 2);
}

View File

@@ -0,0 +1,7 @@
// ==========================================================================
// Misc cosmetic
// ==========================================================================
.no-border {
border: 0;
}

View File

@@ -0,0 +1,20 @@
// ==========================================================================
// Hidden
// ==========================================================================
[hidden] {
display: none;
}
// Hide only visually, but have it available for screen readers: h5bp.com/v
.sr-only {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
opacity: 0.001;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 420 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 419 B

View File

@@ -1,7 +0,0 @@
The *SVG* folder contains the icons you selected as separate SVG files.
The *demo.html* lists the icons that you selected. To learn how to insert your icons as inline SVGs (with the <use> element), refer to the source of this HTML file. If you prefer to reference an external SVG instead of embedding it in the HTML, you will need to use javascript to fetch the SVG in order to make sure your SVGs will work fine in IE. IcoMoon's Quick Usage mode can take care of that and host your SVGs too.
You can ignore the *svgdefs.svg* file. It contains the same SVG <symbol> definitions as the ones you can find in the demo.html file.
If you prefer using PNGs or CSS sprites, refer to the Preferences panel of the IcoMoon app before downloading your zip pack.

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M9.016 3c2.748 0 4.984 2.243 4.984 5s-2.236 5-4.97 5l-0.060-0.004c-0.055-0.004-0.11-0.007-0.165-0.010l-0.336-0.014-3.665 1.098 0.629-2.483-0.517-0.747c-0.58-0.839-0.886-1.822-0.886-2.842 0-2.757 2.236-5 4.984-5zM9.016 1c-3.857 0-6.984 3.134-6.984 7 0 1.479 0.46 2.848 1.241 3.978l-1.272 5.022 6.722-2.015c0.098 0.004 0.194 0.015 0.293 0.015 3.857 0 6.984-3.134 6.984-7s-3.127-7-6.984-7v0z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 741 B

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M17.569 8.246l-10.569-6.246c-0.552 0-1 0.448-1 1v1.954l-5-2.954c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1l5-2.955v1.955c0 0.552 0.448 1 1 1l10.569-6.246c0.267-0.158 0.431-0.444 0.431-0.754s-0.164-0.597-0.431-0.754zM6 10.722l-4 2.364v-8.172l4 2.364v3.444zM8 13.086v-8.172l6.915 4.086-6.915 4.086z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 650 B

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M17 2h-16c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1h16c0.552 0 1-0.448 1-1v-12c0-0.552-0.448-1-1-1zM2 4h2v2h-2v-2zM2 8h2v2h-2v-2zM2 14v-2h2v2h-2zM6 14v-10h6v10h-6zM16 14h-2v-2h2v2zM16 10h-2v-2h2v2zM16 6h-2v-2h2v2z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 568 B

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M16 1h-14c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1h5.5c-0.829 0-1.5 0.671-1.5 1.5v0.5h6v-0.5c0-0.829-0.671-1.5-1.5-1.5h5.5c0.552 0 1-0.448 1-1v-12c0-0.552-0.448-1-1-1zM15 12.5c0 0.276-0.224 0.5-0.5 0.5h-11c-0.276 0-0.5-0.224-0.5-0.5v-9c0-0.276 0.224-0.5 0.5-0.5h11c0.276 0 0.5 0.224 0.5 0.5v9z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 649 B

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M5 4.914l6.915 4.086-6.915 4.086v-8.172zM4 2c-0.552 0-1 0.448-1 1v12c0 0.552 0.448 1 1 1l10.569-6.246c0.267-0.158 0.431-0.444 0.431-0.754s-0.164-0.597-0.431-0.754l-10.569-6.246z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 530 B

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M8.013 14.006h-0.822c-2.372-0.388-4.187-2.453-4.187-4.934 0-0.831 0.213-1.609 0.574-2.299l0.613 0.85c0.446 0.618 1.409 0.446 1.614-0.289l1.162-4.179c0.162-0.58-0.275-1.155-0.877-1.154l-4.174 0.006c-0.741 0.001-1.17 0.841-0.736 1.443l1.128 1.564c-0.817 1.145-1.302 2.544-1.302 4.059 0 3.499 2.566 6.399 5.918 6.917 0.091 0.014 0.18 0.010 0.267-0.001v0.012h0.822c0.545 0 0.987-0.442 0.987-0.987v-0.020c0-0.545-0.442-0.987-0.987-0.987z" fill="#444444"></path>
<path d="M16.82 14.551l-1.129-1.564c0.818-1.145 1.302-2.544 1.302-4.059 0-3.499-2.566-6.399-5.918-6.918-0.091-0.014-0.18-0.010-0.267 0.001v-0.013h-0.822c-0.545 0-0.986 0.442-0.986 0.987v0.020c0 0.546 0.442 0.988 0.986 0.988h0.822c2.372 0.388 4.187 2.453 4.187 4.934 0 0.831-0.213 1.609-0.573 2.299l-0.614-0.85c-0.446-0.618-1.409-0.446-1.613 0.289l-1.163 4.179c-0.161 0.581 0.275 1.155 0.878 1.154l4.174-0.006c0.742-0.001 1.17-0.842 0.736-1.443z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M10.214 2c-0.111 0-0.225 0.032-0.334 0.101l-4.048 2.81c-0.083 0.058-0.182 0.089-0.283 0.089h-3.553c-0.55 0-0.996 0.448-0.996 1v6c0 0.552 0.446 1 0.996 1h3.553c0.102 0 0.2 0.031 0.283 0.089l4.048 2.81c0.109 0.069 0.223 0.101 0.334 0.101 0.392 0 0.747-0.4 0.747-0.949v-12.101c0-0.55-0.355-0.949-0.747-0.949zM8.969 12.834l-2.387-1.657c-0.166-0.115-0.364-0.178-0.566-0.178h-2.525c-0.275 0-0.498-0.224-0.498-0.5v-3c0-0.276 0.223-0.5 0.498-0.5h2.525c0.202 0 0.4-0.062 0.566-0.178l2.387-1.657v7.669z" fill="#444444"></path>
<path d="M16.934 8.799c-0.086-1.748-1.514-2.991-2.507-3.649-0.47-0.312-1.094-0.122-1.325 0.408l-0.038 0.086c-0.188 0.431-0.045 0.939 0.336 1.194 0.706 0.473 1.586 1.247 1.624 2.065 0.032 0.676-0.553 1.468-1.663 2.27-0.398 0.288-0.529 0.839-0.285 1.275l0.042 0.075c0.266 0.475 0.866 0.624 1.3 0.312 1.74-1.251 2.586-2.606 2.516-4.037z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by IcoMoon.io -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18">
<path d="M17 9c0-4.418-3.582-8-8-8s-8 3.582-8 8c0 4.418 3.582 8 8 8s8-3.582 8-8zM3 9c0-3.309 2.691-6 6-6s6 2.691 6 6-2.691 6-6 6-6-2.691-6-6z" fill="#444444"></path>
<path d="M9.998 12.010v-3.633l1.293 1.317c0.392 0.388 1.025 0.388 1.417 0s0.391-1.016 0-1.403l-2.967-3c-0.188-0.186-0.442-0.291-0.709-0.291-0.011 0-0.023 0-0.034 0.001s-0.023-0.001-0.034-0.001c-0.266 0-0.521 0.105-0.709 0.291l-2.967 3c-0.391 0.388-0.391 1.016 0 1.403s1.025 0.388 1.417 0l1.294-1.317v3.633c0 0.547 0.443 0.99 0.99 0.99h0.018c0.547 0 0.99-0.443 0.99-0.99z" fill="#444444"></path>
</svg>

Before

Width:  |  Height:  |  Size: 880 B

View File

@@ -1,147 +0,0 @@
body {
padding: 0;
margin: 0;
font-family: sans-serif;
font-size: 1em;
line-height: 1.5;
color: #555;
background: #fff;
}
h1 {
font-size: 1.5em;
font-weight: normal;
box-shadow: 0 1px #ddd, 0 2px #fff, 0 3px #ddd;
}
small {
font-size: .66666667em;
}
a {
color: #e74c3c;
text-decoration: none;
}
a:hover, a:focus {
box-shadow: 0 1px #e74c3c;
}
.bshadow0, input {
box-shadow: inset 0 -2px #e7e7e7;
}
input:hover {
box-shadow: inset 0 -2px #ccc;
}
input, fieldset {
font-size: 1em;
margin: 0;
padding: 0;
border: 0;
}
input {
color: inherit;
line-height: 1.5;
height: 1.5em;
padding: .25em 0;
}
input:focus {
outline: none;
box-shadow: inset 0 -2px #449fdb;
}
.glyph {
font-size: 16px;
width: 17em;
margin-right: 1.5em;
float: left;
overflow: hidden;
}
.glyph svg {
color: #444444;
}
.liga {
width: 80%;
width: calc(100% - 2.5em);
}
.talign-right {
text-align: right;
}
.talign-center {
text-align: center;
}
.bgc1 {
background: #f1f1f1;
}
.fgc0 {
color: #000;
}
.fgc1 {
color: #999;
}
p {
margin-top: 1em;
margin-bottom: 1em;
}
.mvm {
margin-top: .75em;
margin-bottom: .75em;
}
.mtn {
margin-top: 0;
}
.mtl, .mal {
margin-top: 1.5em;
}
.mbl, .mal {
margin-bottom: 1.5em;
}
.mal, .mhl {
margin-left: 1.5em;
margin-right: 1.5em;
}
.mhmm {
margin-left: 1em;
margin-right: 1em;
}
.mls {
margin-left: .25em;
}
.ptl {
padding-top: 1.5em;
}
.pbs, .pvs {
padding-bottom: .25em;
}
.pvs, .pts {
padding-top: .25em;
}
.unit {
float: left;
}
.unitRight {
float: right;
}
.size1of2 {
width: 50%;
}
.size1of1 {
width: 100%;
}
.clearfix:before, .clearfix:after {
content: " ";
display: table;
}
.clearfix:after {
clear: both;
}
.hidden-true {
display: none;
}
.textbox0 {
width: 3em;
background: #f1f1f1;
padding: .25em .5em;
line-height: 1.5;
height: 1.5em;
}
.fs0 {
font-size: 16px;
}
.fs1 {
font-size: 18px;
}

View File

@@ -1,99 +0,0 @@
<!doctype html>
<html>
<head>
<title>IcoMoon - SVG Icons</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="demo-files/demo.css">
<link rel="stylesheet" href="style.css">
</head>
<body>
<svg display="none" width="0" height="0" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<symbol id="icon-bubble" viewBox="0 0 1024 1024">
<title>bubble</title>
<path class="path1" d="M512.889 170.667c156.334 0 283.556 127.596 283.556 284.444s-127.221 284.444-282.722 284.459l-3.388-0.208c-3.14-0.222-6.251-0.412-9.388-0.555l-19.111-0.791-208.473 62.485 35.778-141.227-29.388-42.51c-32.974-47.751-50.418-103.653-50.418-161.653 0-156.848 127.195-284.444 283.556-284.444zM512.889 56.889c-219.445 0-397.333 178.292-397.333 398.222 0 84.124 26.167 162.028 70.612 226.32l-72.389 285.68 382.416-114.626c5.584 0.236 11.056 0.848 16.695 0.848 219.445 0 397.333-178.292 397.333-398.222s-177.888-398.222-397.333-398.222v0z"></path>
</symbol>
<symbol id="icon-sound" viewBox="0 0 1024 1024">
<title>sound</title>
<path class="path1" d="M581.056 113.778c-6.332 0-12.779 1.819-19.001 5.764l-230.277 159.847c-4.722 3.292-10.332 5.056-16.11 5.056h-202.112c-31.305 0-56.667 25.472-56.667 56.889v341.333c0 31.417 25.362 56.889 56.667 56.889h202.112c5.778 0 11.388 1.764 16.11 5.056l230.277 159.847c6.222 3.945 12.695 5.764 19.001 5.764 22.277 0 42.5-22.736 42.5-54v-688.43c0-31.278-20.222-54.014-42.5-54.014zM510.222 730.139l-135.78-94.265c-9.472-6.569-20.722-10.1-32.222-10.1h-143.666c-15.666 0-28.334-12.736-28.334-28.444v-170.667c0-15.708 12.667-28.444 28.334-28.444h143.668c11.5 0 22.75-3.527 32.222-10.098l135.778-94.26v436.277z"></path>
<path class="path2" d="M963.333 500.583c-4.889-99.417-86.112-170.139-142.612-207.57-26.75-17.737-62.222-6.93-75.364 23.195l-2.137 4.889c-10.667 24.5-2.583 53.403 19.111 67.945 40.167 26.903 90.222 70.958 92.389 117.486 1.833 38.473-31.445 83.5-94.612 129.111-22.667 16.375-30.112 47.708-16.222 72.555l2.389 4.292c15.111 27.001 49.278 35.486 73.945 17.762 98.999-71.15 147.111-148.233 143.111-229.664z"></path>
</symbol>
<symbol id="icon-monitor" viewBox="0 0 1024 1024">
<title>monitor</title>
<path class="path1" d="M910.222 56.889h-796.444c-31.417 0-56.889 25.472-56.889 56.889v682.667c0 31.417 25.472 56.889 56.889 56.889h312.889c-47.14 0-85.333 38.194-85.333 85.333v28.444h341.333v-28.444c0-47.14-38.194-85.333-85.333-85.333h312.889c31.417 0 56.889-25.472 56.889-56.889v-682.667c0-31.417-25.472-56.889-56.889-56.889zM853.333 711.111c0 15.723-12.722 28.444-28.444 28.444h-625.778c-15.723 0-28.444-12.722-28.444-28.444v-512c0-15.723 12.722-28.444 28.444-28.444h625.778c15.723 0 28.444 12.722 28.444 28.444v512z"></path>
</symbol>
<symbol id="icon-up" viewBox="0 0 1024 1024">
<title>up</title>
<path class="path1" d="M967.111 512c0-251.362-203.749-455.111-455.111-455.111s-455.111 203.749-455.111 455.111c0 251.362 203.749 455.111 455.111 455.111s455.111-203.749 455.111-455.111zM170.667 512c0-188.222 153.111-341.333 341.333-341.333s341.333 153.111 341.333 341.333-153.111 341.333-341.333 341.333-341.333-153.111-341.333-341.333z"></path>
<path class="path2" d="M568.784 683.221v-206.667l73.584 74.917c22.277 22.055 58.332 22.055 80.612 0 22.251-22.055 22.251-57.778 0-79.833l-168.779-170.667c-10.695-10.583-25.166-16.528-40.306-16.528-0.651 0-1.3 0.025-1.95 0.048-0.649-0.023-1.296-0.048-1.948-0.048-15.141 0-29.611 5.945-40.306 16.528l-168.779 170.667c-22.251 22.055-22.251 57.778 0 79.833 22.277 22.055 58.332 22.055 80.612 0l73.588-74.917v206.667c0 31.111 25.223 56.334 56.334 56.334h1.006c31.111 0 56.332-25.223 56.332-56.334z"></path>
</symbol>
<symbol id="icon-play" viewBox="0 0 1024 1024">
<title>play</title>
<path class="path1" d="M284.444 279.556l393.388 232.444-393.388 232.444v-464.889zM227.556 113.778c-31.417 0-56.889 25.472-56.889 56.889v682.667c0 31.417 25.472 56.889 56.889 56.889l601.278-355.305c15.166-8.972 24.5-25.278 24.5-42.917s-9.333-33.945-24.5-42.917l-601.278-355.305z"></path>
</symbol>
<symbol id="icon-fast-forward" viewBox="0 0 1024 1024">
<title>fast-forward</title>
<path class="path1" d="M999.5 469.083l-601.278-355.305c-31.417 0-56.889 25.472-56.889 56.889v111.184l-284.444-168.073c-31.417 0-56.889 25.472-56.889 56.889v682.667c0 31.417 25.472 56.889 56.889 56.889l284.444-168.084v111.195c0 31.417 25.472 56.889 56.889 56.889l601.278-355.305c15.195-8.972 24.5-25.278 24.5-42.917s-9.305-33.945-24.5-42.917zM341.333 609.972l-227.556 134.473v-464.889l227.556 134.473v195.943zM455.111 744.444v-464.889l393.388 232.444-393.388 232.444z"></path>
</symbol>
<symbol id="icon-refresh" viewBox="0 0 1024 1024">
<title>refresh</title>
<path class="path1" d="M455.874 796.763h-46.741c-134.912-22.064-238.203-139.554-238.203-280.692 0-47.296 12.142-91.534 32.651-130.773l34.875 48.352c25.397 35.179 80.169 25.371 91.813-16.452l66.11-237.758c9.198-33.013-15.646-65.719-49.909-65.664l-237.451 0.363c-42.183 0.055-66.555 47.852-41.877 82.087l64.19 88.951c-46.489 65.136-74.084 144.722-74.084 230.894 0 199.076 146 364.055 336.684 393.513 5.196 0.805 10.256 0.583 15.2-0.055v0.693h46.741c31.012 0 56.133-25.122 56.133-56.162v-1.14c0-31.012-25.122-56.158-56.133-56.158z"></path>
<path class="path2" d="M956.871 827.803l-64.219-88.951c46.517-65.138 74.084-144.722 74.084-230.894 0-199.076-145.972-364.057-336.656-393.54-5.198-0.805-10.256-0.583-15.202 0.084v-0.724h-46.768c-30.985 0-56.105 25.148-56.105 56.16v1.14c0 31.040 25.12 56.188 56.105 56.188h46.768c134.914 22.064 238.174 139.554 238.174 280.692 0 47.296-12.142 91.534-32.622 130.773l-34.903-48.352c-25.371-35.18-80.171-25.371-91.785 16.423l-66.137 237.756c-9.17 33.042 15.671 65.721 49.936 65.666l237.451-0.334c42.185-0.057 66.555-47.881 41.879-82.087z"></path>
</symbol>
<symbol id="icon-film" viewBox="0 0 1024 1024">
<title>film</title>
<path class="path1" d="M967.111 113.778h-910.222c-31.417 0-56.889 25.472-56.889 56.889v682.667c0 31.417 25.472 56.889 56.889 56.889h910.222c31.417 0 56.889-25.472 56.889-56.889v-682.667c0-31.417-25.472-56.889-56.889-56.889zM113.778 227.556h113.778v113.778h-113.778v-113.778zM113.778 455.111h113.778v113.778h-113.778v-113.778zM113.778 796.444v-113.778h113.778v113.778h-113.778zM341.333 796.444v-568.889h341.333v568.889h-341.333zM910.222 796.444h-113.778v-113.778h113.778v113.778zM910.222 568.889h-113.778v-113.778h113.778v113.778zM910.222 341.333h-113.778v-113.778h113.778v113.778z"></path>
</symbol>
</defs>
</svg>
<header class="bgc1 clearfix">
<p class="mhl">SVG Icons - Generated by <a href="https://icomoon.io/app">IcoMoon</a></p>
</header>
<div class="clearfix mhl ptl">
<h1 class="mvm mtn fgc1">Grid Size: 18</h1>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-bubble"><use xlink:href="#icon-bubble"></use></svg><span class="mls"> icon-bubble</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-sound"><use xlink:href="#icon-sound"></use></svg><span class="mls"> icon-sound</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-monitor"><use xlink:href="#icon-monitor"></use></svg><span class="mls"> icon-monitor</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-up"><use xlink:href="#icon-up"></use></svg><span class="mls"> icon-up</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-play"><use xlink:href="#icon-play"></use></svg><span class="mls"> icon-play</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-fast-forward"><use xlink:href="#icon-fast-forward"></use></svg><span class="mls"> icon-fast-forward</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-refresh"><use xlink:href="#icon-refresh"></use></svg><span class="mls"> icon-refresh</span>
</div>
</div>
<div class="glyph fs1">
<div class="clearfix pbs">
<svg class="icon icon-film"><use xlink:href="#icon-film"></use></svg><span class="mls"> icon-film</span>
</div>
</div>
</div>
</body>
</html>

View File

@@ -1,6 +0,0 @@
.icon {
display: inline-block;
width: 1em;
height: 1em;
fill: currentColor;
}

Some files were not shown because too many files have changed in this diff Show More