From 97286bc27ae3346471343d33458b02455863592f Mon Sep 17 00:00:00 2001
From: Luke Pulverenti
Date: Sat, 23 Jan 2016 14:03:59 -0500
Subject: [PATCH] update components
---
.../emby-webcomponents/.bower.json | 8 +-
.../browserdeviceprofile.js | 136 ++++++----------
.../bower_components/howler.js/.bower.json | 8 +-
.../bower_components/howler.js/CHANGELOG.md | 6 +
.../bower_components/howler.js/bower.json | 1 -
.../bower_components/howler.js/howler.js | 25 ++-
.../bower_components/howler.js/howler.min.js | 6 +-
.../bower_components/howler.js/package.json | 2 +-
.../bower_components/iron-icons/.bower.json | 11 +-
.../bower_components/iron-icons/.travis.yml | 11 +-
.../bower_components/iron-icons/bower.json | 5 +-
.../iron-icons/iron-icons.html | 2 +-
.../neon-animation/.bower.json | 12 +-
.../neon-animation/.travis.yml | 11 +-
.../animations/cascaded-animation.html | 2 +-
.../animations/slide-down-animation.html | 4 +-
.../slide-from-bottom-animation.html | 59 +++++++
.../animations/slide-from-top-animation.html | 59 +++++++
.../neon-animation/bower.json | 6 +-
.../demo/declarative/index.html | 24 ++-
.../neon-animation/demo/grid/index.html | 2 +-
.../neon-animation/guides/neon-animation.md | 14 +-
.../neon-animatable-behavior.html | 5 +
.../neon-animation/neon-animatable.html | 1 +
.../neon-animation/neon-animated-pages.html | 2 +-
.../neon-animation/neon-animations.html | 2 +
.../neon-animation/test/index.html | 15 +-
.../bower_components/paper-input/.bower.json | 6 +-
.../paper-material/.bower.json | 11 +-
.../paper-material/.travis.yml | 11 +-
.../paper-material/bower.json | 5 +-
.../paper-material/demo/index.html | 145 +++++++-----------
.../paper-material-shared-styles.html | 2 +
33 files changed, 361 insertions(+), 258 deletions(-)
create mode 100644 dashboard-ui/bower_components/neon-animation/animations/slide-from-bottom-animation.html
create mode 100644 dashboard-ui/bower_components/neon-animation/animations/slide-from-top-animation.html
diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
index 3d86035ba..1a5737e97 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/.bower.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
@@ -15,12 +15,12 @@
},
"devDependencies": {},
"ignore": [],
- "version": "1.0.23",
- "_release": "1.0.23",
+ "version": "1.0.24",
+ "_release": "1.0.24",
"_resolution": {
"type": "version",
- "tag": "1.0.23",
- "commit": "1e7c56cf54a657d72d35d36f37937231942a2685"
+ "tag": "1.0.24",
+ "commit": "ab1c97700a5059e3522a8ec5c43fa33ee36d6e20"
},
"_source": "git://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "~1.0.0",
diff --git a/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js b/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js
index 56a1f5ad8..a471c279c 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js
@@ -5,53 +5,6 @@ define(['browser'], function (browser) {
return !!(v.canPlayType && v.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"').replace(/no/, ''));
}
- var supportedFormats;
- function getSupportedFormats() {
-
- if (supportedFormats) {
- return supportedFormats;
- }
-
- var list = [];
- var elem = document.createElement('video');
-
- if (elem.canPlayType('video/webm').replace(/no/, '')) {
- list.push('webm');
- }
- if (elem.canPlayType('audio/mp4; codecs="ac-3"').replace(/no/, '')) {
- list.push('ac3');
- }
- if (browser.chrome) {
- list.push('mkv');
- }
-
- if (canPlayH264()) {
- list.push('h264');
- }
-
- if (document.createElement('audio').canPlayType('audio/aac').replace(/no/, '') || browser.firefox) {
- list.push('aac');
- }
-
- if (document.createElement('audio').canPlayType('audio/mp3').replace(/no/, '')) {
- list.push('mp3');
- }
- if (document.createElement('audio').canPlayType('audio/ogg; codecs="opus"').replace(/no/, '')) {
- list.push('opus');
- }
-
- if (document.createElement('audio').canPlayType('audio/webm').replace(/no/, '')) {
- list.push('webma');
- }
-
- if (document.createElement('audio').canPlayType('audio/flac').replace(/no/, '')) {
- list.push('flac');
- }
-
- supportedFormats = list;
- return list;
- }
-
var _supportsTextTracks;
function supportsTextTracks() {
@@ -85,9 +38,28 @@ define(['browser'], function (browser) {
function canPlayHlsWithMSE() {
if (window.MediaSource != null) {
- // text tracks don’t work with this in firefox
- return !browser.firefox;
- }
+ // text tracks don’t work with this in firefox
+ return !browser.firefox;
+ }
+
+ return false;
+ }
+
+ function canPlayAudioFormat(format) {
+
+ var typeString;
+
+ if (format == 'opus') {
+ typeString = 'audio/ogg; codecs="opus"';
+ } else if (format == 'webma') {
+ typeString = 'audio/webm';
+ } else {
+ typeString = 'audio/' + format;
+ }
+
+ if (document.createElement('audio').canPlayType(typeString).replace(/no/, '')) {
+ return true;
+ }
return false;
}
@@ -96,13 +68,11 @@ define(['browser'], function (browser) {
var bitrateSetting = 100000000;
- var supportedFormats = getSupportedFormats();
+ var videoTestElement = document.createElement('video');
- var canPlayWebm = supportedFormats.indexOf('webm') != -1;
- var canPlayAc3 = supportedFormats.indexOf('ac3') != -1;
- var canPlayMp3 = supportedFormats.indexOf('mp3') != -1;
- var canPlayAac = supportedFormats.indexOf('aac') != -1;
- var canPlayMkv = supportedFormats.indexOf('mkv') != -1;
+ var canPlayWebm = videoTestElement.canPlayType('video/webm').replace(/no/, '');
+ // No real way to detect this, but it's too good to pass up
+ var canPlayMkv = browser.chrome;
var profile = {};
@@ -117,23 +87,23 @@ define(['browser'], function (browser) {
// Only put mp3 first if mkv support is there
// Otherwise with HLS and mp3 audio we're seeing some browsers
if (canPlayMkv) {
- if (canPlayMp3) {
+ if (canPlayAudioFormat('mp3')) {
videoAudioCodecs.push('mp3');
}
}
- if (canPlayAac) {
+ if (canPlayAudioFormat('aac')) {
videoAudioCodecs.push('aac');
}
if (!canPlayMkv) {
- if (canPlayMp3) {
+ if (canPlayAudioFormat('mp3')) {
videoAudioCodecs.push('mp3');
}
}
- if (canPlayAc3) {
+ if (videoTestElement.canPlayType('audio/mp4; codecs="ac-3"').replace(/no/, '')) {
videoAudioCodecs.push('ac3');
}
- if (supportedFormats.indexOf('h264') != -1) {
+ if (canPlayH264()) {
profile.DirectPlayProfiles.push({
Container: 'mp4,m4v',
Type: 'Video',
@@ -151,14 +121,12 @@ define(['browser'], function (browser) {
});
}
- ['opus', 'mp3', 'aac', 'flac', 'webma'].forEach(function (audioFormat) {
+ ['opus', 'mp3', 'aac', 'flac', 'webma'].filter(canPlayAudioFormat).forEach(function (audioFormat) {
- if (supportedFormats.indexOf(audioFormat) != -1) {
- profile.DirectPlayProfiles.push({
- Container: audioFormat == 'webma' ? 'webma,webm' : audioFormat,
- Type: 'Audio'
- });
- }
+ profile.DirectPlayProfiles.push({
+ Container: audioFormat == 'webma' ? 'webma,webm' : audioFormat,
+ Type: 'Audio'
+ });
});
if (canPlayWebm) {
@@ -170,24 +138,22 @@ define(['browser'], function (browser) {
profile.TranscodingProfiles = [];
- ['opus', 'mp3', 'aac'].forEach(function (audioFormat) {
+ ['opus', 'mp3', 'aac'].filter(canPlayAudioFormat).forEach(function (audioFormat) {
- if (supportedFormats.indexOf(audioFormat) != -1) {
- profile.TranscodingProfiles.push({
- Container: audioFormat,
- Type: 'Audio',
- AudioCodec: audioFormat,
- Context: 'Streaming',
- Protocol: 'http'
- });
- profile.TranscodingProfiles.push({
- Container: audioFormat,
- Type: 'Audio',
- AudioCodec: audioFormat,
- Context: 'Static',
- Protocol: 'http'
- });
- }
+ profile.TranscodingProfiles.push({
+ Container: audioFormat,
+ Type: 'Audio',
+ AudioCodec: audioFormat,
+ Context: 'Streaming',
+ Protocol: 'http'
+ });
+ profile.TranscodingProfiles.push({
+ Container: audioFormat,
+ Type: 'Audio',
+ AudioCodec: audioFormat,
+ Context: 'Static',
+ Protocol: 'http'
+ });
});
// Can't use mkv on mobile because we have to use the native player controls and they won't be able to seek it
diff --git a/dashboard-ui/bower_components/howler.js/.bower.json b/dashboard-ui/bower_components/howler.js/.bower.json
index b704d1e27..b5d0a5d29 100644
--- a/dashboard-ui/bower_components/howler.js/.bower.json
+++ b/dashboard-ui/bower_components/howler.js/.bower.json
@@ -1,14 +1,14 @@
{
"name": "howler.js",
- "version": "1.1.28",
"description": "Javascript audio library for the modern web.",
"main": "howler.js",
"homepage": "https://github.com/goldfire/howler.js",
- "_release": "1.1.28",
+ "version": "1.1.29",
+ "_release": "1.1.29",
"_resolution": {
"type": "version",
- "tag": "v1.1.28",
- "commit": "34c22ab507f847bba7bd2eb2b003197cfc54f274"
+ "tag": "v1.1.29",
+ "commit": "169feb2702632459cb0eb37bf24a20e1d840f78c"
},
"_source": "git://github.com/goldfire/howler.js.git",
"_target": "~1.1.27",
diff --git a/dashboard-ui/bower_components/howler.js/CHANGELOG.md b/dashboard-ui/bower_components/howler.js/CHANGELOG.md
index 4e88c32b1..f0c662a16 100644
--- a/dashboard-ui/bower_components/howler.js/CHANGELOG.md
+++ b/dashboard-ui/bower_components/howler.js/CHANGELOG.md
@@ -1,3 +1,9 @@
+## 1.1.29 (January 22, 2016)
+- `ADDED`: Error messages added onto each `loaderror` event (thanks Philip Silva).
+- `FIXED`: Fixed various edge-case bugs by no longer comparing functions by string in `.off()` (thanks richard-livingston).
+- `FIXED`: Edge case where multiple overlapping instances of the same sound won't all fire `end` (thanks richard-livingston).
+- `FIXED`: `end` event now fires correctly when changing the `rate` of a sound.
+
## 1.1.28 (October 22, 2015)
- `FIXED`: Fixed typo with iOS enabler that was preventing it from working.
diff --git a/dashboard-ui/bower_components/howler.js/bower.json b/dashboard-ui/bower_components/howler.js/bower.json
index 7526cc7fa..c1e65cc4e 100644
--- a/dashboard-ui/bower_components/howler.js/bower.json
+++ b/dashboard-ui/bower_components/howler.js/bower.json
@@ -1,6 +1,5 @@
{
"name": "howler.js",
- "version": "1.1.27",
"description": "Javascript audio library for the modern web.",
"main": "howler.js"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/howler.js/howler.js b/dashboard-ui/bower_components/howler.js/howler.js
index 515235a5e..d3943aa8b 100644
--- a/dashboard-ui/bower_components/howler.js/howler.js
+++ b/dashboard-ui/bower_components/howler.js/howler.js
@@ -1,8 +1,8 @@
/*!
- * howler.js v1.1.28
+ * howler.js v1.1.29
* howlerjs.com
*
- * (c) 2013-2015, James Simpson of GoldFire Studios
+ * (c) 2013-2016, James Simpson of GoldFire Studios
* goldfirestudios.com
*
* MIT License
@@ -139,7 +139,7 @@
/**
* Check for codec support.
- * @param {String} ext Audio file extention.
+ * @param {String} ext Audio file extension.
* @return {Boolean}
*/
codecs: function(ext) {
@@ -284,7 +284,7 @@
// if no audio is available, quit immediately
if (noAudio) {
- self.on('loaderror');
+ self.on('loaderror', new Error('No audio support.'));
return;
}
@@ -306,7 +306,7 @@
if (ext) {
ext = ext[1].toLowerCase();
} else {
- self.on('loaderror');
+ self.on('loaderror', new Error('Could not extract format from passed URLs, please add format parameter.'));
return;
}
}
@@ -318,7 +318,7 @@
}
if (!url) {
- self.on('loaderror');
+ self.on('loaderror', new Error('No codec support for selected audio sources.'));
return;
}
@@ -483,7 +483,7 @@
// fire ended event
self.on('end', soundId);
- }, duration * 1000);
+ }, (duration / self._rate) * 1000);
// store the reference to the timer
self._onendTimer.push({timer: timerId, id: data.id});
@@ -1060,7 +1060,7 @@
*/
_clearEndTimer: function(soundId) {
var self = this,
- index = 0;
+ index = -1;
// loop through the timers to find the one associated with this sound
for (var i=0; i=0&&1>=e){o._volume=e,n&&(a.gain.value=e);for(var t in o._howls)if(o._howls.hasOwnProperty(t)&&o._howls[t]._webAudio===!1)for(var r=0;r0?r._pos:t._sprite[e][0]/1e3,i=0;t._webAudio?(i=t._sprite[e][1]/1e3-r._pos,r._pos>0&&(a=t._sprite[e][0]/1e3+a)):i=t._sprite[e][1]/1e3-(a-t._sprite[e][0]/1e3);var u,d=!(!t._loop&&!t._sprite[e][2]),f="string"==typeof n?n:Math.round(Date.now()*Math.random())+"";if(function(){var o={id:f,sprite:e,loop:d};u=setTimeout(function(){!t._webAudio&&d&&t.stop(o.id).play(e,o.id),t._webAudio&&!d&&(t._nodeById(o.id).paused=!0,t._nodeById(o.id)._pos=0,t._clearEndTimer(o.id)),t._webAudio||d||t.stop(o.id),t.on("end",f)},1e3*i),t._onendTimer.push({timer:u,id:o.id})}(),t._webAudio){var _=t._sprite[e][0]/1e3,s=t._sprite[e][1]/1e3;r.id=f,r.paused=!1,p(t,[d,_,s],f),t._playStart=o.currentTime,r.gain.value=t._volume,"undefined"==typeof r.bufferSource.start?d?r.bufferSource.noteGrainOn(0,a,86400):r.bufferSource.noteGrainOn(0,a,i):d?r.bufferSource.start(0,a,86400):r.bufferSource.start(0,a,i)}else{if(4!==r.readyState&&(r.readyState||!navigator.isCocoonJS))return t._clearEndTimer(f),function(){var o=t,a=e,i=n,u=r,d=function(){o.play(a,i),u.removeEventListener("canplaythrough",d,!1)};u.addEventListener("canplaythrough",d,!1)}(),t;r.readyState=4,r.id=f,r.currentTime=a,r.muted=l._muted||r.muted,r.volume=t._volume*l.volume(),setTimeout(function(){r.play()},0)}return t.on("play"),"function"==typeof n&&n(f),t}),t):("function"==typeof n&&n(),t):(t.on("load",function(){t.play(e,n)}),t)},pause:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.pause(e)}),o;o._clearEndTimer(e);var n=e?o._nodeById(e):o._activeNode();if(n)if(n._pos=o.pos(null,e),o._webAudio){if(!n.bufferSource||n.paused)return o;n.paused=!0,"undefined"==typeof n.bufferSource.stop?n.bufferSource.noteOff(0):n.bufferSource.stop(0)}else n.pause();return o.on("pause"),o},stop:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.stop(e)}),o;o._clearEndTimer(e);var n=e?o._nodeById(e):o._activeNode();if(n)if(n._pos=0,o._webAudio){if(!n.bufferSource||n.paused)return o;n.paused=!0,"undefined"==typeof n.bufferSource.stop?n.bufferSource.noteOff(0):n.bufferSource.stop(0)}else isNaN(n.duration)||(n.pause(),n.currentTime=0);return o},mute:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.mute(e)}),o;var n=e?o._nodeById(e):o._activeNode();return n&&(o._webAudio?n.gain.value=0:n.muted=!0),o},unmute:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.unmute(e)}),o;var n=e?o._nodeById(e):o._activeNode();return n&&(o._webAudio?n.gain.value=o._volume:n.muted=!1),o},volume:function(e,o){var n=this;if(e=parseFloat(e),e>=0&&1>=e){if(n._volume=e,!n._loaded)return n.on("play",function(){n.volume(e,o)}),n;var t=o?n._nodeById(o):n._activeNode();return t&&(n._webAudio?t.gain.value=e:t.volume=e*l.volume()),n}return n._volume},loop:function(e){var o=this;return"boolean"==typeof e?(o._loop=e,o):o._loop},sprite:function(e){var o=this;return"object"==typeof e?(o._sprite=e,o):o._sprite},pos:function(e,n){var t=this;if(!t._loaded)return t.on("load",function(){t.pos(e)}),"number"==typeof e?t:t._pos||0;e=parseFloat(e);var r=n?t._nodeById(n):t._activeNode();if(r)return e>=0?(t.pause(n),r._pos=e,t.play(r._sprite,n),t):t._webAudio?r._pos+(o.currentTime-t._playStart):r.currentTime;if(e>=0)return t;for(var a=0;a=0||0>e))return r._pos3d;if(r._webAudio){var a=t?r._nodeById(t):r._activeNode();a&&(r._pos3d=[e,o,n],a.panner.setPosition(e,o,n),a.panner.panningModel=r._model||"HRTF")}return r},fade:function(e,o,n,t,r){var a=this,i=Math.abs(e-o),u=e>o?"down":"up",d=i/.01,l=n/d;if(!a._loaded)return a.on("load",function(){a.fade(e,o,n,t,r)}),a;a.volume(e,r);for(var f=1;d>=f;f++)!function(){var e=a._volume+("up"===u?.01:-.01)*f,n=Math.round(1e3*e)/1e3,i=o;setTimeout(function(){a.volume(n,r),n===i&&t&&t()},l*f)}()},fadeIn:function(e,o,n){return this.volume(0).play().fade(0,e,o,n)},fadeOut:function(e,o,n,t){var r=this;return r.fade(r._volume,e,o,function(){n&&n(),r.pause(t),r.on("end")},t)},_nodeById:function(e){for(var o=this,n=o._audioNode[0],t=0;t=0&&!(5>=n);e--)o._audioNode[e].paused&&(o._webAudio&&o._audioNode[e].disconnect(0),n--,o._audioNode.splice(e,1))},_clearEndTimer:function(e){for(var o=this,n=0,t=0;t=0&&l._howls.splice(r,1),delete e[o._src],o=null}},n)var _=function(o,n){if(n in e)return o._duration=e[n].duration,void c(o);if(/^data:[^;]+;base64,/.test(n)){for(var t=atob(n.split(",")[1]),r=new Uint8Array(t.length),a=0;a=0&&1>=e){o._volume=e,n&&(a.gain.value=e);for(var r in o._howls)if(o._howls.hasOwnProperty(r)&&o._howls[r]._webAudio===!1)for(var t=0;t0?t._pos:r._sprite[e][0]/1e3,i=0;r._webAudio?(i=r._sprite[e][1]/1e3-t._pos,t._pos>0&&(a=r._sprite[e][0]/1e3+a)):i=r._sprite[e][1]/1e3-(a-r._sprite[e][0]/1e3);var u,d=!(!r._loop&&!r._sprite[e][2]),f="string"==typeof n?n:Math.round(Date.now()*Math.random())+"";if(function(){var o={id:f,sprite:e,loop:d};u=setTimeout(function(){!r._webAudio&&d&&r.stop(o.id).play(e,o.id),r._webAudio&&!d&&(r._nodeById(o.id).paused=!0,r._nodeById(o.id)._pos=0,r._clearEndTimer(o.id)),r._webAudio||d||r.stop(o.id),r.on("end",f)},i/r._rate*1e3),r._onendTimer.push({timer:u,id:o.id})}(),r._webAudio){var s=r._sprite[e][0]/1e3,_=r._sprite[e][1]/1e3;t.id=f,t.paused=!1,p(r,[d,s,_],f),r._playStart=o.currentTime,t.gain.value=r._volume,"undefined"==typeof t.bufferSource.start?d?t.bufferSource.noteGrainOn(0,a,86400):t.bufferSource.noteGrainOn(0,a,i):d?t.bufferSource.start(0,a,86400):t.bufferSource.start(0,a,i)}else{if(4!==t.readyState&&(t.readyState||!navigator.isCocoonJS))return r._clearEndTimer(f),function(){var o=r,a=e,i=n,u=t,d=function(){o.play(a,i),u.removeEventListener("canplaythrough",d,!1)};u.addEventListener("canplaythrough",d,!1)}(),r;t.readyState=4,t.id=f,t.currentTime=a,t.muted=l._muted||t.muted,t.volume=r._volume*l.volume(),setTimeout(function(){t.play()},0)}return r.on("play"),"function"==typeof n&&n(f),r}),r):("function"==typeof n&&n(),r):(r.on("load",function(){r.play(e,n)}),r)},pause:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.pause(e)}),o;o._clearEndTimer(e);var n=e?o._nodeById(e):o._activeNode();if(n)if(n._pos=o.pos(null,e),o._webAudio){if(!n.bufferSource||n.paused)return o;n.paused=!0,"undefined"==typeof n.bufferSource.stop?n.bufferSource.noteOff(0):n.bufferSource.stop(0)}else n.pause();return o.on("pause"),o},stop:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.stop(e)}),o;o._clearEndTimer(e);var n=e?o._nodeById(e):o._activeNode();if(n)if(n._pos=0,o._webAudio){if(!n.bufferSource||n.paused)return o;n.paused=!0,"undefined"==typeof n.bufferSource.stop?n.bufferSource.noteOff(0):n.bufferSource.stop(0)}else isNaN(n.duration)||(n.pause(),n.currentTime=0);return o},mute:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.mute(e)}),o;var n=e?o._nodeById(e):o._activeNode();return n&&(o._webAudio?n.gain.value=0:n.muted=!0),o},unmute:function(e){var o=this;if(!o._loaded)return o.on("play",function(){o.unmute(e)}),o;var n=e?o._nodeById(e):o._activeNode();return n&&(o._webAudio?n.gain.value=o._volume:n.muted=!1),o},volume:function(e,o){var n=this;if(e=parseFloat(e),e>=0&&1>=e){if(n._volume=e,!n._loaded)return n.on("play",function(){n.volume(e,o)}),n;var r=o?n._nodeById(o):n._activeNode();return r&&(n._webAudio?r.gain.value=e:r.volume=e*l.volume()),n}return n._volume},loop:function(e){var o=this;return"boolean"==typeof e?(o._loop=e,o):o._loop},sprite:function(e){var o=this;return"object"==typeof e?(o._sprite=e,o):o._sprite},pos:function(e,n){var r=this;if(!r._loaded)return r.on("load",function(){r.pos(e)}),"number"==typeof e?r:r._pos||0;e=parseFloat(e);var t=n?r._nodeById(n):r._activeNode();if(t)return e>=0?(r.pause(n),t._pos=e,r.play(t._sprite,n),r):r._webAudio?t._pos+(o.currentTime-r._playStart):t.currentTime;if(e>=0)return r;for(var a=0;a=0||0>e))return t._pos3d;if(t._webAudio){var a=r?t._nodeById(r):t._activeNode();a&&(t._pos3d=[e,o,n],a.panner.setPosition(e,o,n),a.panner.panningModel=t._model||"HRTF")}return t},fade:function(e,o,n,r,t){var a=this,i=Math.abs(e-o),u=e>o?"down":"up",d=i/.01,l=n/d;if(!a._loaded)return a.on("load",function(){a.fade(e,o,n,r,t)}),a;a.volume(e,t);for(var f=1;d>=f;f++)!function(){var e=a._volume+("up"===u?.01:-.01)*f,n=Math.round(1e3*e)/1e3,i=o;setTimeout(function(){a.volume(n,t),n===i&&r&&r()},l*f)}()},fadeIn:function(e,o,n){return this.volume(0).play().fade(0,e,o,n)},fadeOut:function(e,o,n,r){var t=this;return t.fade(t._volume,e,o,function(){n&&n(),t.pause(r),t.on("end")},r)},_nodeById:function(e){for(var o=this,n=o._audioNode[0],r=0;r=0&&!(5>=n);e--)o._audioNode[e].paused&&(o._webAudio&&o._audioNode[e].disconnect(0),n--,o._audioNode.splice(e,1))},_clearEndTimer:function(e){for(var o=this,n=-1,r=0;r=0&&l._howls.splice(t,1),delete e[o._src],o=null}},n)var s=function(o,n){if(n in e)return o._duration=e[n].duration,void c(o);if(/^data:[^;]+;base64,/.test(n)){for(var r=atob(n.split(",")[1]),t=new Uint8Array(r.length),a=0;a
diff --git a/dashboard-ui/bower_components/neon-animation/.bower.json b/dashboard-ui/bower_components/neon-animation/.bower.json
index 50c9671ca..1d3a3dfb6 100644
--- a/dashboard-ui/bower_components/neon-animation/.bower.json
+++ b/dashboard-ui/bower_components/neon-animation/.bower.json
@@ -1,7 +1,7 @@
{
"name": "neon-animation",
"description": "A system for animating Polymer-based web components",
- "version": "1.0.9",
+ "version": "1.1.0",
"authors": [
"The Polymer Authors"
],
@@ -34,7 +34,6 @@
"iron-meta": "PolymerElements/iron-meta#^1.0.0",
"iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^1.0.0",
"iron-selector": "PolymerElements/iron-selector#^1.0.0",
- "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"web-animations-js": "web-animations/web-animations-js#2.1.3"
},
"devDependencies": {
@@ -42,18 +41,19 @@
"paper-toolbar": "PolymerElements/paper-toolbar#^1.0.0",
"iron-component-page": "PolymerElements/iron-component-page#^1.0.0",
"test-fixture": "PolymerElements/test-fixture#^1.0.0",
- "web-component-tester": "*",
+ "web-component-tester": "^4.0.0",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0",
"paper-item": "PolymerElements/paper-item#^1.0.0",
+ "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"iron-icon": "PolymerElements/iron-icon#^1.0.0",
"iron-icons": "PolymerElements/iron-icons#^1.0.0",
"paper-icon-button": "PolymerElements/paper-icon-button#^1.0.0"
},
- "_release": "1.0.9",
+ "_release": "1.1.0",
"_resolution": {
"type": "version",
- "tag": "v1.0.9",
- "commit": "ab40f4e4a777153cb5c27c9b62ee82b94d53eb76"
+ "tag": "v1.1.0",
+ "commit": "564e0dc92724f2bc0bf0f76bf2ac392d4905b2ff"
},
"_source": "git://github.com/polymerelements/neon-animation.git",
"_target": "^1.0.0",
diff --git a/dashboard-ui/bower_components/neon-animation/.travis.yml b/dashboard-ui/bower_components/neon-animation/.travis.yml
index 9fd5f44f6..047c9b2f9 100644
--- a/dashboard-ui/bower_components/neon-animation/.travis.yml
+++ b/dashboard-ui/bower_components/neon-animation/.travis.yml
@@ -1,18 +1,20 @@
language: node_js
sudo: false
-node_js: 4
+node_js: stable
addons:
firefox: latest
apt:
sources:
- google-chrome
+ - ubuntu-toolchain-r-test
packages:
- google-chrome-stable
+ - g++-4.8
+ sauce_connect: true
before_script:
- - npm install web-component-tester
- - npm install bower
- - 'export PATH=$PWD/node_modules/.bin:$PATH'
+ - npm install -g bower polylint web-component-tester
- bower install
+ - polylint
script:
- xvfb-run wct
- "if [ \"${TRAVIS_PULL_REQUEST}\" = \"false\" ]; then wct -s 'default'; fi"
@@ -20,3 +22,4 @@ env:
global:
- secure: AnPpB3uzTWU0hmrDmPyOb/3mJZRv4BgPFJrpaT/mQ/9979IBeFfFHJX6MqQlgo894lJWvKSvAjEutgK5Z3LQh6cLB3JuhPBInwKgFPUx/V14VIju+Z7jwx6RycE3flb2f9Y6y5My13ovswsTNnhJEkpDGlbRnJlh5c+HeP+6D0oFPFaGWvULZsAHQnEykir1TMPL2TD8SfuYWifmBj7QYQ2vsYnqZoAkPNedv/OtdoA3rziFXSG3GqXX2NJVnYqlaLj/HiHK7xLlZu/ODfo6En12DMtqJajBP7NfJkEUAF72ScOsYxlwiI1aYcVSUy6upkxxPwkBj5x7wDZ0tRFmlautyq2skDAh/fgIfRw9AMe8kj/YLef+T8bmZNT9IIelNaNcpfTQHpYWcOpPk2uBT3iIOcmp+Ys8RZKqzYmekBtHTwCGmQcfQrjBXjrjz5xlUaoMH7vauh7Ct7SkD7Fu87XSUvks4v2yypxxmHXO8jUilKuUdtAzb3dtOboO0ptsoLuBm/qSeURco4be6KPyVnDxdWdbYOxIZtE8JeY2DbonS45OgFtL1NKeEIhiTQIcOuSs0qwJFFzaBBAfek1tkTvBhMJP3JPWpIbNJhdZWzSd0LUSe892sbiZJY67FA4xcY8vK5JZNWnxFyKX1+A8ljPEd1yBImxMzUDMNS9t0G0=
- secure: jdh0G/FDRghnjasav0/8nOZsYgXUd5DLKgD5XrDCVrBvPwXly+AnMXE+Hr/bztEXylcEmcqrWUUfB1ODUdVn1EGk8CJaYpHyKcoMcpJiEjHYS/3i1rXRsnHs2o3dcRO69rA8A5LZeG3yYfiPVUiKlyl7MWOal3pNohDGi8dZcT0CoWnA8UaV//0uXG3GGG3X8KcbVfB2hQvG1mK6wM6W4eHVOplcBaE2xnnFDMxfU2KnRgjLSPw66PeJGczWOBR9fZql9p6kV38ZM2s4qnUsMlTZkNqn0f6CuEPqcG6+S6Tk9+0dvAHet+Ky9fgiyJPq+p6sDGfdm1ZJwOjz5MoyudzGSuHAJHH2nscQf8pUBQ1gxKaGg7GV9LUj0cjLDAFWA2KpxTlabDZhZPIMoMKFpqpvJG49gDVga5gGabom21nd/+E1i/2vvoP16kY9rjf+Gd5+tIzajXCu8Tq06Xz63idZDJbt38GjArfFFqe5k7CqE+m2vpWx/iTwe+cT70wnIq/xigvaNq6CgUuNdzkVnVBj/C7yVqwwZkfbBC7HhRna9Nyzts/j2M2vwy0oYB73WzuhpYSweaAOZq2kcUIQ5ZMGO3UkZRjwWnHxAi5mrvZhRcRIqkvJJhoMQnjwJSTah/3cz0cJh19DL+Ozde24/tuY+vOnhFb+ddo1OKD6FtM=
+ - CXX=g++-4.8
diff --git a/dashboard-ui/bower_components/neon-animation/animations/cascaded-animation.html b/dashboard-ui/bower_components/neon-animation/animations/cascaded-animation.html
index 303735c0f..7cc0bc566 100644
--- a/dashboard-ui/bower_components/neon-animation/animations/cascaded-animation.html
+++ b/dashboard-ui/bower_components/neon-animation/animations/cascaded-animation.html
@@ -22,7 +22,7 @@ Configuration:
name: 'cascaded-animation',
animation: ,
nodes: ,
- nodedelay: ,
+ nodeDelay: ,
timing:
}
```
diff --git a/dashboard-ui/bower_components/neon-animation/animations/slide-down-animation.html b/dashboard-ui/bower_components/neon-animation/animations/slide-down-animation.html
index 83c1f9bfd..781c80e39 100644
--- a/dashboard-ui/bower_components/neon-animation/animations/slide-down-animation.html
+++ b/dashboard-ui/bower_components/neon-animation/animations/slide-down-animation.html
@@ -47,8 +47,8 @@ Configuration:
}
this._effect = new KeyframeEffect(node, [
- {'transform': 'translateY(-100%)'},
- {'transform': 'none'}
+ {'transform': 'translateY(0%)'},
+ {'transform': 'translateY(100%)'}
], this.timingFromConfig(config));
return this._effect;
diff --git a/dashboard-ui/bower_components/neon-animation/animations/slide-from-bottom-animation.html b/dashboard-ui/bower_components/neon-animation/animations/slide-from-bottom-animation.html
new file mode 100644
index 000000000..18c40db26
--- /dev/null
+++ b/dashboard-ui/bower_components/neon-animation/animations/slide-from-bottom-animation.html
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
diff --git a/dashboard-ui/bower_components/neon-animation/animations/slide-from-top-animation.html b/dashboard-ui/bower_components/neon-animation/animations/slide-from-top-animation.html
new file mode 100644
index 000000000..32920f06b
--- /dev/null
+++ b/dashboard-ui/bower_components/neon-animation/animations/slide-from-top-animation.html
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
diff --git a/dashboard-ui/bower_components/neon-animation/bower.json b/dashboard-ui/bower_components/neon-animation/bower.json
index 7826bd108..a5cdfeb1d 100644
--- a/dashboard-ui/bower_components/neon-animation/bower.json
+++ b/dashboard-ui/bower_components/neon-animation/bower.json
@@ -1,7 +1,7 @@
{
"name": "neon-animation",
"description": "A system for animating Polymer-based web components",
- "version": "1.0.9",
+ "version": "1.1.0",
"authors": [
"The Polymer Authors"
],
@@ -34,7 +34,6 @@
"iron-meta": "PolymerElements/iron-meta#^1.0.0",
"iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^1.0.0",
"iron-selector": "PolymerElements/iron-selector#^1.0.0",
- "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"web-animations-js": "web-animations/web-animations-js#2.1.3"
},
"devDependencies": {
@@ -42,9 +41,10 @@
"paper-toolbar": "PolymerElements/paper-toolbar#^1.0.0",
"iron-component-page": "PolymerElements/iron-component-page#^1.0.0",
"test-fixture": "PolymerElements/test-fixture#^1.0.0",
- "web-component-tester": "*",
+ "web-component-tester": "^4.0.0",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0",
"paper-item": "PolymerElements/paper-item#^1.0.0",
+ "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"iron-icon": "PolymerElements/iron-icon#^1.0.0",
"iron-icons": "PolymerElements/iron-icons#^1.0.0",
"paper-icon-button": "PolymerElements/paper-icon-button#^1.0.0"
diff --git a/dashboard-ui/bower_components/neon-animation/demo/declarative/index.html b/dashboard-ui/bower_components/neon-animation/demo/declarative/index.html
index e6e3af164..1d812b1fa 100644
--- a/dashboard-ui/bower_components/neon-animation/demo/declarative/index.html
+++ b/dashboard-ui/bower_components/neon-animation/demo/declarative/index.html
@@ -32,7 +32,13 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
}
.toolbar {
+ position: relative;
+
padding: 8px;
+
+ background-color: white;
+
+ z-index: 12;
}
neon-animated-pages {
@@ -74,8 +80,10 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
- <<
- >>
+ ⇦
+ ⇨
+ ⇧
+ ⇩
@@ -105,6 +113,18 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
this.selected = this.selected === 4 ? 0 : (this.selected + 1);
}
+ scope._onUpClick = function() {
+ this.entryAnimation = 'slide-from-top-animation';
+ this.exitAnimation = 'slide-down-animation';
+ this.selected = this.selected === 4 ? 0 : (this.selected + 1);
+ }
+
+ scope._onDownClick = function() {
+ this.entryAnimation = 'slide-from-bottom-animation';
+ this.exitAnimation = 'slide-up-animation';
+ this.selected = this.selected === 0 ? 4 : (this.selected - 1);
+ }
+
-
-
+
+
+
diff --git a/dashboard-ui/bower_components/neon-animation/demo/grid/index.html b/dashboard-ui/bower_components/neon-animation/demo/grid/index.html
index 07c07c14d..3bd338400 100644
--- a/dashboard-ui/bower_components/neon-animation/demo/grid/index.html
+++ b/dashboard-ui/bower_components/neon-animation/demo/grid/index.html
@@ -39,7 +39,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
-
+
diff --git a/dashboard-ui/bower_components/neon-animation/guides/neon-animation.md b/dashboard-ui/bower_components/neon-animation/guides/neon-animation.md
index 7af1659a7..ff0ddcec7 100644
--- a/dashboard-ui/bower_components/neon-animation/guides/neon-animation.md
+++ b/dashboard-ui/bower_components/neon-animation/guides/neon-animation.md
@@ -280,12 +280,14 @@ The new page will slide in from the right, and the old page slide away to the le
Single element animations:
- * `fade-in-animation` Animates opacity from `0` to `1`.
- * `fade-out-animation` Animates opacity from `1` to `0`.
- * `scale-down-animation` Animates transform from `scale(1)` to `scale(0)`.
- * `scale-up-animation` Animates transform from `scale(0)` to `scale(1)`.
- * `slide-down-animation` Animates transform from `translateY(-100%)` to `none`.
- * `slide-up-animation` Animates transform from `none` to `translateY(-100%)`.
+ * `fade-in-animation` Animates opacity from `0` to `1`;
+ * `fade-out-animation` Animates opacity from `1` to `0`;
+ * `scale-down-animation` Animates transform from `scale(1)` to `scale(0)`;
+ * `scale-up-animation` Animates transform from `scale(0)` to `scale(1)`;
+ * `slide-down-animation` Animates transform from `none` to `translateY(100%)`;
+ * `slide-up-animation` Animates transform from `none` to `translateY(-100%)`;
+ * `slide-from-top-animation` Animates transform from `translateY(-100%)` to `none`;
+ * `slide-from-bottom-animation` Animates transform from `translateY(100%)` to `none`;
* `slide-left-animation` Animates transform from `none` to `translateX(-100%)`;
* `slide-right-animation` Animates transform from `none` to `translateX(100%)`;
* `slide-from-left-animation` Animates transform from `translateX(-100%)` to `none`;
diff --git a/dashboard-ui/bower_components/neon-animation/neon-animatable-behavior.html b/dashboard-ui/bower_components/neon-animation/neon-animatable-behavior.html
index c5d75cabf..be769d077 100644
--- a/dashboard-ui/bower_components/neon-animation/neon-animatable-behavior.html
+++ b/dashboard-ui/bower_components/neon-animation/neon-animatable-behavior.html
@@ -95,6 +95,11 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
return;
}
+ if(this.animationConfig.value && typeof this.animationConfig.value === 'function') {
+ this._warn(this._logf('playAnimation', "Please put 'animationConfig' inside of your components 'properties' object instead of outside of it."));
+ return;
+ }
+
// type is optional
var thisConfig;
if (type) {
diff --git a/dashboard-ui/bower_components/neon-animation/neon-animatable.html b/dashboard-ui/bower_components/neon-animation/neon-animatable.html
index c9ed412f1..99fe32507 100644
--- a/dashboard-ui/bower_components/neon-animation/neon-animatable.html
+++ b/dashboard-ui/bower_components/neon-animation/neon-animatable.html
@@ -8,6 +8,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
-->
+
-
-
@@ -17,8 +14,10 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN