aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Dlna/DlnaManager.cs1
-rw-r--r--MediaBrowser.Dlna/MediaBrowser.Dlna.csproj4
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs16
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs22
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs16
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs16
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyPs4Profile.cs260
-rw-r--r--MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 4.xml100
-rw-r--r--MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json1
-rw-r--r--MediaBrowser.Server.Implementations/Localization/Server/server.json3
-rw-r--r--MediaBrowser.WebDashboard/Api/PackageCreator.cs41
-rw-r--r--MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj696
12 files changed, 1056 insertions, 120 deletions
diff --git a/MediaBrowser.Dlna/DlnaManager.cs b/MediaBrowser.Dlna/DlnaManager.cs
index 2d2525919..9ce62034b 100644
--- a/MediaBrowser.Dlna/DlnaManager.cs
+++ b/MediaBrowser.Dlna/DlnaManager.cs
@@ -525,6 +525,7 @@ namespace MediaBrowser.Dlna
new Xbox360Profile(),
new XboxOneProfile(),
new SonyPs3Profile(),
+ new SonyPs4Profile(),
new SonyBravia2010Profile(),
new SonyBravia2011Profile(),
new SonyBravia2012Profile(),
diff --git a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
index 204872e7b..06aaff734 100644
--- a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
+++ b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
@@ -82,6 +82,7 @@
<Compile Include="Profiles\DirectTvProfile.cs" />
<Compile Include="Profiles\DishHopperJoeyProfile.cs" />
<Compile Include="Profiles\PopcornHourProfile.cs" />
+ <Compile Include="Profiles\SonyPs4Profile.cs" />
<Compile Include="Profiles\VlcProfile.cs" />
<Compile Include="Ssdp\DeviceDiscoveryInfo.cs" />
<Compile Include="Ssdp\Extensions.cs" />
@@ -210,6 +211,9 @@
<EmbeddedResource Include="Profiles\Xml\BubbleUPnp.xml" />
<EmbeddedResource Include="Profiles\Xml\Vlc.xml" />
</ItemGroup>
+ <ItemGroup>
+ <EmbeddedResource Include="Profiles\Xml\Sony PlayStation 4.xml" />
+ </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
index b3d5f7835..a4f52e737 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
@@ -333,6 +333,22 @@ namespace MediaBrowser.Dlna.Profiles
Value = "he-aac"
}
}
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "mp3,mp2",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "2"
+ }
+ }
}
};
}
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
index d5fa96a14..a1becfcb1 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
@@ -75,21 +75,21 @@ namespace MediaBrowser.Dlna.Profiles
{
Container = "ts",
VideoCodec = "mpeg2video",
- AudioCodec = "mp3,mp2",
+ AudioCodec = "mp3",
Type = DlnaProfileType.Video
},
new DirectPlayProfile
{
Container = "mp4",
VideoCodec = "h264,mpeg4",
- AudioCodec = "ac3,aac,mp3,mp2",
+ AudioCodec = "ac3,aac,mp3",
Type = DlnaProfileType.Video
},
new DirectPlayProfile
{
Container = "mpeg",
VideoCodec = "mpeg2video,mpeg1video",
- AudioCodec = "mp3,mp2",
+ AudioCodec = "mp3",
Type = DlnaProfileType.Video
},
new DirectPlayProfile
@@ -350,6 +350,22 @@ namespace MediaBrowser.Dlna.Profiles
Value = "he-aac"
}
}
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "mp3,mp2",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "2"
+ }
+ }
}
};
}
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
index 9f5740562..6c16fccc3 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
@@ -268,6 +268,22 @@ namespace MediaBrowser.Dlna.Profiles
Value = "6"
}
}
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "mp3,mp2",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "2"
+ }
+ }
}
};
}
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
index 9ab286952..bf653e63a 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
@@ -286,6 +286,22 @@ namespace MediaBrowser.Dlna.Profiles
Value = "30"
}
}
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "mp3,mp2",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "2"
+ }
+ }
}
};
}
diff --git a/MediaBrowser.Dlna/Profiles/SonyPs4Profile.cs b/MediaBrowser.Dlna/Profiles/SonyPs4Profile.cs
new file mode 100644
index 000000000..dd974d252
--- /dev/null
+++ b/MediaBrowser.Dlna/Profiles/SonyPs4Profile.cs
@@ -0,0 +1,260 @@
+using MediaBrowser.Model.Dlna;
+using System.Xml.Serialization;
+
+namespace MediaBrowser.Dlna.Profiles
+{
+ [XmlRoot("Profile")]
+ public class SonyPs4Profile : DefaultProfile
+ {
+ public SonyPs4Profile()
+ {
+ Name = "Sony PlayStation 4";
+
+ Identification = new DeviceIdentification
+ {
+ FriendlyName = "PLAYSTATION 4",
+
+ Headers = new[]
+ {
+ new HttpHeaderInfo
+ {
+ Name = "User-Agent",
+ Value = @"PLAYSTATION 4",
+ Match = HeaderMatchType.Substring
+ },
+
+ new HttpHeaderInfo
+ {
+ Name = "X-AV-Client-Info",
+ Value = @"PLAYSTATION 4",
+ Match = HeaderMatchType.Substring
+ }
+ }
+ };
+
+ AlbumArtPn = "JPEG_TN";
+
+ SonyAggregationFlags = "10";
+ XDlnaDoc = "DMS-1.50";
+ EnableSingleAlbumArtLimit = true;
+
+ DirectPlayProfiles = new[]
+ {
+ new DirectPlayProfile
+ {
+ Container = "avi",
+ Type = DlnaProfileType.Video,
+ VideoCodec = "mpeg4",
+ AudioCodec = "mp2,mp3"
+ },
+ new DirectPlayProfile
+ {
+ Container = "ts",
+ Type = DlnaProfileType.Video,
+ VideoCodec = "mpeg1video,mpeg2video,h264",
+ AudioCodec = "ac3,mp2,mp3,aac"
+ },
+ new DirectPlayProfile
+ {
+ Container = "mpeg",
+ Type = DlnaProfileType.Video,
+ VideoCodec = "mpeg1video,mpeg2video",
+ AudioCodec = "mp2"
+ },
+ new DirectPlayProfile
+ {
+ Container = "mp4,mkv",
+ Type = DlnaProfileType.Video,
+ VideoCodec = "h264,mpeg4",
+ AudioCodec = "aac,ac3"
+ },
+ new DirectPlayProfile
+ {
+ Container = "aac,mp3,wav",
+ Type = DlnaProfileType.Audio
+ },
+ new DirectPlayProfile
+ {
+ Container = "jpeg,png,gif,bmp,tiff",
+ Type = DlnaProfileType.Photo
+ }
+ };
+
+ TranscodingProfiles = new[]
+ {
+ new TranscodingProfile
+ {
+ Container = "mp3",
+ AudioCodec = "mp3",
+ Type = DlnaProfileType.Audio
+ },
+ new TranscodingProfile
+ {
+ Container = "ts",
+ VideoCodec = "h264",
+ AudioCodec = "mp3",
+ Type = DlnaProfileType.Video
+ },
+ new TranscodingProfile
+ {
+ Container = "jpeg",
+ Type = DlnaProfileType.Photo
+ }
+ };
+
+ ContainerProfiles = new[]
+ {
+ new ContainerProfile
+ {
+ Type = DlnaProfileType.Photo,
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.Width,
+ Value = "1920"
+ },
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.Height,
+ Value = "1080"
+ }
+ }
+ }
+ };
+
+ CodecProfiles = new[]
+ {
+ new CodecProfile
+ {
+ Type = CodecType.Video,
+ Codec = "h264",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.Width,
+ Value = "1920"
+ },
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.Height,
+ Value = "1080"
+ },
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.VideoFramerate,
+ Value = "30",
+ IsRequired = false
+ },
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.VideoBitrate,
+ Value = "15360000",
+ IsRequired = false
+ },
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.VideoLevel,
+ Value = "41",
+ IsRequired = false
+ }
+ }
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "ac3",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "6",
+ IsRequired = false
+ },
+
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioBitrate,
+ Value = "640000",
+ IsRequired = false
+ }
+ }
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "wmapro",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "2"
+ }
+ }
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "aac",
+
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.NotEquals,
+ Property = ProfileConditionValue.AudioProfile,
+ Value = "he-aac",
+ IsRequired = false
+ }
+ }
+ }
+ };
+
+ ResponseProfiles = new[]
+ {
+ new ResponseProfile
+ {
+ Container = "mp4,mov",
+ AudioCodec="aac",
+ MimeType = "video/mp4",
+ Type = DlnaProfileType.Video
+ },
+
+ new ResponseProfile
+ {
+ Container = "avi",
+ MimeType = "video/divx",
+ OrgPn="AVI",
+ Type = DlnaProfileType.Video
+ },
+
+ new ResponseProfile
+ {
+ Container = "wav",
+ MimeType = "audio/wav",
+ Type = DlnaProfileType.Audio
+ }
+ };
+ }
+ }
+}
diff --git a/MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 4.xml b/MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 4.xml
new file mode 100644
index 000000000..3b372aec5
--- /dev/null
+++ b/MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 4.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0"?>
+<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <Name>Sony PlayStation 4</Name>
+ <Identification>
+ <FriendlyName>PLAYSTATION 4</FriendlyName>
+ <Headers>
+ <HttpHeaderInfo name="User-Agent" value="PLAYSTATION 4" match="Substring" />
+ <HttpHeaderInfo name="X-AV-Client-Info" value="PLAYSTATION 4" match="Substring" />
+ </Headers>
+ </Identification>
+ <FriendlyName>Emby</FriendlyName>
+ <Manufacturer>Emby</Manufacturer>
+ <ManufacturerUrl>http://emby.media/</ManufacturerUrl>
+ <ModelName>Emby</ModelName>
+ <ModelDescription>Emby</ModelDescription>
+ <ModelNumber>Emby</ModelNumber>
+ <ModelUrl>http://emby.media/</ModelUrl>
+ <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
+ <EnableSingleAlbumArtLimit>true</EnableSingleAlbumArtLimit>
+ <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>
+ <AlbumArtPn>JPEG_TN</AlbumArtPn>
+ <MaxAlbumArtWidth>480</MaxAlbumArtWidth>
+ <MaxAlbumArtHeight>480</MaxAlbumArtHeight>
+ <MaxIconWidth>48</MaxIconWidth>
+ <MaxIconHeight>48</MaxIconHeight>
+ <MaxStreamingBitrate>10000000</MaxStreamingBitrate>
+ <MaxStaticBitrate>10000000</MaxStaticBitrate>
+ <MusicStreamingTranscodingBitrate>128000</MusicStreamingTranscodingBitrate>
+ <MusicSyncBitrate>128000</MusicSyncBitrate>
+ <XDlnaDoc>DMS-1.50</XDlnaDoc>
+ <SonyAggregationFlags>10</SonyAggregationFlags>
+ <ProtocolInfo>http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_HD_50_AC3;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_HD_50_AC3_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=AVC_TS_HD_50_AC3_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/L16;rate=44100;channels=1:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/L16;rate=44100;channels=2:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/L16;rate=48000;channels=1:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/L16;rate=48000;channels=2:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/x-ms-wma:DLNA.ORG_PN=WMA_BASE;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:audio/x-ms-wma:DLNA.ORG_PN=WMA_FULL;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_SM;DLNA.ORG_OP=00;DLNA.ORG_FLAGS=00D00000000000000000000000000000,http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_MED;DLNA.ORG_OP=00;DLNA.ORG_FLAGS=00D00000000000000000000000000000,http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_LRG;DLNA.ORG_OP=00;DLNA.ORG_FLAGS=00D00000000000000000000000000000,http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_TN;DLNA.ORG_OP=00;DLNA.ORG_FLAGS=00D00000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG1;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_PS_PAL;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_PS_NTSC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_EU;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_EU_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_TS_SD_EU_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_NA;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_NA_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_TS_SD_NA_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_KO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=MPEG_TS_SD_KO_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=MPEG_TS_SD_KO_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-msvideo:DLNA.ORG_PN=AVI;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-matroska:DLNA.ORG_PN=MATROSKA;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_MP_SD_AAC_MULT5;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_MP_SD_MPEG1_L3;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_MP_SD_AC3;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_MP_HD_720p_AAC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_MP_HD_1080i_AAC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_HP_HD_AAC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=AVC_MP4_LPCM;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=MPEG4_P2_MP4_ASP_AAC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=MPEG4_P2_MP4_SP_L6_AAC;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mp4:DLNA.ORG_PN=MPEG4_P2_MP4_NDSD;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_SD_AAC_MULT5;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_SD_AAC_MULT5_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=AVC_TS_MP_SD_AAC_MULT5_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_SD_MPEG1_L3;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_SD_MPEG1_L3_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=AVC_TS_MP_SD_MPEG1_L3_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_HD_AAC_MULT5;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_HD_AAC_MULT5_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=AVC_TS_MP_HD_AAC_MULT5_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_HD_MPEG1_L3;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_MP_HD_MPEG1_L3_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/mpeg:DLNA.ORG_PN=AVC_TS_MP_HD_MPEG1_L3_ISO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_PN=AVC_TS_HD_50_LPCM_T;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-wmv:DLNA.ORG_PN=WMVMED_BASE;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-wmv:DLNA.ORG_PN=WMVMED_FULL;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-wmv:DLNA.ORG_PN=WMVHIGH_FULL;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-wmv:DLNA.ORG_PN=WMVMED_PRO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-wmv:DLNA.ORG_PN=WMVHIGH_PRO;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-asf:DLNA.ORG_PN=VC1_ASF_AP_L1_WMA;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-asf:DLNA.ORG_PN=VC1_ASF_AP_L2_WMA;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000,http-get:*:video/x-ms-asf:DLNA.ORG_PN=VC1_ASF_AP_L3_WMA;DLNA.ORG_OP=11;DLNA.ORG_FLAGS=01500000000000000000000000000000</ProtocolInfo>
+ <TimelineOffsetSeconds>0</TimelineOffsetSeconds>
+ <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
+ <RequiresPlainFolders>false</RequiresPlainFolders>
+ <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+ <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+ <EnableDlnaProtocol>true</EnableDlnaProtocol>
+ <XmlRootAttributes />
+ <DirectPlayProfiles>
+ <DirectPlayProfile container="avi" audioCodec="mp2,mp3" videoCodec="mpeg4" type="Video" />
+ <DirectPlayProfile container="ts" audioCodec="ac3,mp2,mp3,aac" videoCodec="mpeg1video,mpeg2video,h264" type="Video" />
+ <DirectPlayProfile container="mpeg" audioCodec="mp2" videoCodec="mpeg1video,mpeg2video" type="Video" />
+ <DirectPlayProfile container="mp4,mkv" audioCodec="aac,ac3" videoCodec="h264,mpeg4" type="Video" />
+ <DirectPlayProfile container="aac,mp3,wav" type="Audio" />
+ <DirectPlayProfile container="jpeg,png,gif,bmp,tiff" type="Photo" />
+ </DirectPlayProfiles>
+ <TranscodingProfiles>
+ <TranscodingProfile container="mp3" type="Audio" audioCodec="mp3" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" context="Streaming" />
+ <TranscodingProfile container="ts" type="Video" videoCodec="h264" audioCodec="mp3" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" context="Streaming" />
+ <TranscodingProfile container="jpeg" type="Photo" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" context="Streaming" />
+ </TranscodingProfiles>
+ <ContainerProfiles>
+ <ContainerProfile type="Photo">
+ <Conditions>
+ <ProfileCondition condition="LessThanEqual" property="Width" value="1920" isRequired="true" />
+ <ProfileCondition condition="LessThanEqual" property="Height" value="1080" isRequired="true" />
+ </Conditions>
+ </ContainerProfile>
+ </ContainerProfiles>
+ <CodecProfiles>
+ <CodecProfile type="Video" codec="h264">
+ <Conditions>
+ <ProfileCondition condition="LessThanEqual" property="Width" value="1920" isRequired="true" />
+ <ProfileCondition condition="LessThanEqual" property="Height" value="1080" isRequired="true" />
+ <ProfileCondition condition="LessThanEqual" property="VideoFramerate" value="30" isRequired="false" />
+ <ProfileCondition condition="LessThanEqual" property="VideoBitrate" value="15360000" isRequired="false" />
+ <ProfileCondition condition="LessThanEqual" property="VideoLevel" value="41" isRequired="false" />
+ </Conditions>
+ </CodecProfile>
+ <CodecProfile type="VideoAudio" codec="ac3">
+ <Conditions>
+ <ProfileCondition condition="LessThanEqual" property="AudioChannels" value="6" isRequired="false" />
+ <ProfileCondition condition="LessThanEqual" property="AudioBitrate" value="640000" isRequired="false" />
+ </Conditions>
+ </CodecProfile>
+ <CodecProfile type="VideoAudio" codec="wmapro">
+ <Conditions>
+ <ProfileCondition condition="LessThanEqual" property="AudioChannels" value="2" isRequired="true" />
+ </Conditions>
+ </CodecProfile>
+ <CodecProfile type="VideoAudio" codec="aac">
+ <Conditions>
+ <ProfileCondition condition="NotEquals" property="AudioProfile" value="he-aac" isRequired="false" />
+ </Conditions>
+ </CodecProfile>
+ </CodecProfiles>
+ <ResponseProfiles>
+ <ResponseProfile container="mp4,mov" audioCodec="aac" type="Video" mimeType="video/mp4">
+ <Conditions />
+ </ResponseProfile>
+ <ResponseProfile container="avi" type="Video" orgPn="AVI" mimeType="video/divx">
+ <Conditions />
+ </ResponseProfile>
+ <ResponseProfile container="wav" type="Audio" mimeType="audio/wav">
+ <Conditions />
+ </ResponseProfile>
+ </ResponseProfiles>
+ <SubtitleProfiles />
+</Profile> \ No newline at end of file
diff --git a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
index 48d3296e5..7278721cc 100644
--- a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
+++ b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
@@ -39,6 +39,7 @@
"TextEnjoyBonusFeatures": "Enjoy Bonus Features",
"TitleLiveTV": "Live TV",
"TitleSync": "Sync",
+ "HeaderSelectDate": "Select Date",
"ButtonDonate": "Donate",
"LabelRecurringDonationCanBeCancelledHelp": "Recurring donations can be cancelled at any time from within your PayPal account.",
"HeaderMyMedia": "My Media",
diff --git a/MediaBrowser.Server.Implementations/Localization/Server/server.json b/MediaBrowser.Server.Implementations/Localization/Server/server.json
index 300b82525..444c186aa 100644
--- a/MediaBrowser.Server.Implementations/Localization/Server/server.json
+++ b/MediaBrowser.Server.Implementations/Localization/Server/server.json
@@ -1408,7 +1408,7 @@
"HeaderUpcomingMovies": "Upcoming Movies",
"HeaderUpcomingSports": "Upcoming Sports",
"HeaderUpcomingPrograms": "Upcoming Programs",
- "ButtonMoreItems": "More...",
+ "ButtonMoreItems": "More",
"LabelShowLibraryTileNames": "Show library tile names",
"LabelShowLibraryTileNamesHelp": "Determines if labels will be displayed underneath library tiles on the home page",
"OptionEnableTranscodingThrottle": "Enable throttling",
@@ -1427,7 +1427,6 @@
"OptionEnableFullSpeedConversion": "Enable full speed conversion",
"OptionEnableFullSpeedConversionHelp": "By default, sync conversion is performed at a low speed to minimize resource consumption.",
"HeaderPlaylists": "Playlists",
- "HeaderSelectDate": "Select Date",
"HeaderViewStyles": "View Styles",
"LabelSelectViewStyles": "Enable enhanced presentations for:",
"LabelSelectViewStylesHelp": "If enabled, views will be built with metadata to offer categories such as Suggestions, Latest, Genres, and more. If disabled, they'll be displayed with simple folders.",
diff --git a/MediaBrowser.WebDashboard/Api/PackageCreator.cs b/MediaBrowser.WebDashboard/Api/PackageCreator.cs
index dd1eba9a5..033ffd5f3 100644
--- a/MediaBrowser.WebDashboard/Api/PackageCreator.cs
+++ b/MediaBrowser.WebDashboard/Api/PackageCreator.cs
@@ -274,10 +274,26 @@ namespace MediaBrowser.WebDashboard.Api
var version = GetType().Assembly.GetName().Version;
- var imports = "<link rel=\"import\" href=\"thirdparty/polymer/polymer.html\">";
- imports = "";
-
- html = html.Replace("<head>", "<head>" + GetMetaTags(mode) + GetCommonCss(mode, version) + GetCommonJavascript(mode, version) + imports);
+ var imports = new string[]
+ {
+ "bower_components/paper-button/paper-button.html",
+ "bower_components/paper-toast/paper-toast.html",
+ "bower_components/paper-spinner/paper-spinner.html",
+ "bower_components/paper-fab/paper-fab.html",
+ "bower_components/paper-dialog/paper-dialog.html",
+ "bower_components/paper-dialog-scrollable/paper-dialog-scrollable.html",
+ "bower_components/neon-animation/animations/scale-up-animation.html",
+ "bower_components/neon-animation/animations/fade-out-animation.html",
+ //"bower_components/paper-icon-button/paper-icon-button.html",
+ "thirdparty/emby-icons.html"
+ };
+ var importsHtml = string.Join("", imports.Select(i => "<link rel=\"import\" href=\"" + i + "\">").ToArray());
+
+ // It would be better to make polymer completely dynamic and loaded on demand, but seeing issues with that
+ // In chrome it is causing the body to be hidden while loading, which leads to width-check methods to return 0 for everything
+ //imports = "";
+
+ html = html.Replace("<head>", "<head>" + GetMetaTags(mode) + GetCommonCss(mode, version) + GetCommonJavascript(mode, version) + importsHtml);
var bytes = Encoding.UTF8.GetBytes(html);
@@ -333,13 +349,13 @@ namespace MediaBrowser.WebDashboard.Api
if (string.Equals(mode, "cordova", StringComparison.OrdinalIgnoreCase))
{
- sb.Append("<meta http-equiv=\"Content-Security-Policy\" content=\"default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'\">");
+ //sb.Append("<meta http-equiv=\"Content-Security-Policy\" content=\"default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'\">");
}
sb.Append("<meta http-equiv=\"X-UA-Compatibility\" content=\"IE=Edge\">");
sb.Append("<meta name=\"format-detection\" content=\"telephone=no\">");
sb.Append("<meta name=\"msapplication-tap-highlight\" content=\"no\">");
- sb.Append("<meta name=\"viewport\" content=\"user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, target-densitydpi=device-dpi\">");
+ sb.Append("<meta name=\"viewport\" content=\"user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width\">");
sb.Append("<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">");
sb.Append("<meta name=\"mobile-web-app-capable\" content=\"yes\">");
sb.Append("<meta name=\"application-name\" content=\"Emby\">");
@@ -371,7 +387,6 @@ namespace MediaBrowser.WebDashboard.Api
var files = new[]
{
- "thirdparty/jquerymobile-1.4.5/jquery.mobile-1.4.5.min.css",
"thirdparty/fontawesome/css/font-awesome.min.css" + versionString,
"thirdparty/materialicons/style.css" + versionString,
"css/all.css" + versionString
@@ -396,7 +411,7 @@ namespace MediaBrowser.WebDashboard.Api
var files = new List<string>
{
- //"thirdparty/webcomponentsjs/webcomponents-lite.min.js",
+ "bower_components/webcomponentsjs/webcomponents-lite.min.js",
"scripts/all.js" + versionString
};
@@ -615,6 +630,12 @@ namespace MediaBrowser.WebDashboard.Api
/// <returns>Task{Stream}.</returns>
private async Task<Stream> GetAllCss(bool enableMinification)
{
+ var memoryStream = new MemoryStream();
+ var newLineBytes = Encoding.UTF8.GetBytes(Environment.NewLine);
+
+ await AppendResource(memoryStream, "thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.theme.min.css", newLineBytes).ConfigureAwait(false);
+ await AppendResource(memoryStream, "thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.structure.min.css", newLineBytes).ConfigureAwait(false);
+
var files = new[]
{
"site.css",
@@ -634,7 +655,6 @@ namespace MediaBrowser.WebDashboard.Api
"userimage.css",
"livetv.css",
"nowplaying.css",
- "icons.css",
"materialize.css"
};
@@ -678,7 +698,8 @@ namespace MediaBrowser.WebDashboard.Api
}
}
- var memoryStream = new MemoryStream(Encoding.UTF8.GetBytes(css));
+ var bytes = Encoding.UTF8.GetBytes(css);
+ memoryStream.Write(bytes, 0, bytes.Length);
memoryStream.Position = 0;
return memoryStream;
diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
index b987f2069..0c7504d98 100644
--- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
+++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
@@ -87,6 +87,423 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\demo\x-announces.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\iron-a11y-announcer.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-announcer\test\iron-a11y-announcer.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\demo\x-key-aware.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\iron-a11y-keys-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\test\basic-test.html" />
+ <Content Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\demo\simple-button.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\iron-button-state.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\iron-control-state.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\test\active-state.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\test\disabled-state.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\test\focused-state.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-behaviors\test\test-elements.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\demo\simple-fit.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\iron-fit-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\test\iron-fit-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\iron-fit-behavior\test\test-fit.html" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\classes\iron-flex-layout.html" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\classes\iron-shadow-flex-layout.html" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\demo\x-app.html" />
+ <Content Include="dashboard-ui\bower_components\iron-flex-layout\iron-flex-layout.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\demo\svg-sample-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\iron-iconset-svg.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-iconset-svg\test\iron-iconset-svg.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\av-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\communication-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\device-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\editor-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\hardware-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\image-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\iron-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\maps-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\notification-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icons\social-icons.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\demo\location.png" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\iron-icon.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-icon\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-icon\test\iron-icon.html" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\iron-meta.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-meta\test\basic.html" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-meta\test\iron-meta.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\demo\simple-overlay.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\iron-overlay-backdrop.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\iron-overlay-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\iron-overlay-manager.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\test\iron-overlay-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\iron-overlay-behavior\test\test-overlay.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\demo\src\x-app.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\iron-resizable-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\test\basic.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-resizable-behavior\test\test-elements.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\iron-multi-selectable.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-selector\iron-selectable.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-selector\iron-selection.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-selector\iron-selector.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\activate-event.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\basic.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\content-element.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\content.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\multi.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\next-previous.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\selected-attribute.html" />
+ <Content Include="dashboard-ui\bower_components\iron-selector\test\template-repeat.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\cascaded-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\fade-in-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\fade-out-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\hero-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\opaque-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\ripple-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\scale-down-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\scale-up-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-down-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-from-left-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-from-right-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-left-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-right-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\slide-up-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\animations\transform-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\declarative\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\doc\basic.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\doc\my-animatable.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\doc\my-dialog.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\doc\types.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\dropdown\animated-dropdown.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\dropdown\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\grid\animated-grid.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\grid\fullsize-page-with-card.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\grid\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\list\full-view.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\list\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\list\list-demo.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\list\list-view.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\load\animated-grid.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\load\full-page.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\load\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\reprojection\animated-grid.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\reprojection\fullsize-page-with-card.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\reprojection\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\reprojection\reprojected-pages.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\shared.css" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\tiles\circles-page.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\tiles\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\demo\tiles\squares-page.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\index.html" />
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animatable-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animatable.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animated-pages.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animation-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animation-runner-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animation.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-animations.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-shared-element-animatable-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\neon-shared-element-animation-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\neon-animation\web-animations.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\demo\paper-button.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\demo\paper-radio-button.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\paper-button-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\paper-inky-focus-behavior.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\test\paper-button-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\test\paper-radio-button-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\test\test-button.html" />
+ <Content Include="dashboard-ui\bower_components\paper-behaviors\test\test-radio-button.html" />
+ <Content Include="dashboard-ui\bower_components\paper-button\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-button\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-button\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-button\paper-button.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-button\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-button\test\paper-button.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\demo\simple-dialog.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\paper-dialog-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\paper-dialog-common.css" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\test\paper-dialog-behavior.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-behavior\test\test-dialog.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\paper-dialog-scrollable.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog-scrollable\test\paper-dialog-scrollable.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\paper-dialog.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-dialog\test\paper-dialog.html" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\paper-fab.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-fab\test\a11y.html" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\test\basic.html" />
+ <Content Include="dashboard-ui\bower_components\paper-fab\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-material\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-material\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-material\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-material\paper-material.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-material\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-material\test\paper-material.html" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\paper-ripple.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-ripple\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-ripple\test\paper-ripple.html" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\paper-spinner.css">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-spinner\paper-spinner.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-spinner\test\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-spinner\test\paper-spinner.html" />
+ <Content Include="dashboard-ui\bower_components\paper-styles\classes\global.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\classes\shadow-layout.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\classes\shadow.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\classes\typography.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\color.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\default-theme.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\demo-pages.html" />
+ <Content Include="dashboard-ui\bower_components\paper-styles\demo.css" />
+ <Content Include="dashboard-ui\bower_components\paper-styles\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-styles\paper-styles-classes.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\paper-styles.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\shadow.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-styles\typography.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\paper-toast\.gitignore" />
+ <Content Include="dashboard-ui\bower_components\paper-toast\demo\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-toast\hero.svg" />
+ <Content Include="dashboard-ui\bower_components\paper-toast\index.html" />
+ <Content Include="dashboard-ui\bower_components\paper-toast\paper-toast.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\polymer\LICENSE.txt" />
+ <Content Include="dashboard-ui\bower_components\polymer\polymer-micro.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\polymer\polymer-mini.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\polymer\polymer.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\web-animations-js\web-animations-next-lite.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\web-animations-js\web-animations-next.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\web-animations-js\web-animations.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\web-animations-js\web-animations.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\CustomElements.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\CustomElements.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\HTMLImports.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\HTMLImports.min.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\MutationObserver.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\MutationObserver.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\ShadowDOM.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\ShadowDOM.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\webcomponents-lite.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\webcomponents-lite.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\webcomponents.js" />
+ <Content Include="dashboard-ui\bower_components\webcomponentsjs\webcomponents.min.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
<Content Include="dashboard-ui\css\images\clients\androidtv-tile.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -114,6 +531,15 @@
<Content Include="dashboard-ui\css\images\tour\web\tourmysync.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
+ <Content Include="dashboard-ui\scripts\actionsheet.js">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\themes\android.css">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="dashboard-ui\themes\ios.css">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
<Content Include="dashboard-ui\css\materialize.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -156,37 +582,34 @@
<Content Include="dashboard-ui\thirdparty\cordova\wakeonlan.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\polymer\LICENSE.txt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\thirdparty\polymer\polymer-micro.html">
+ <Content Include="dashboard-ui\thirdparty\emby-icons.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\polymer\polymer-mini.html">
+ <Content Include="dashboard-ui\thirdparty\jquerymobile-1.4.5\jquery.mobile.custom.icons.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\polymer\polymer.html">
+ <Content Include="dashboard-ui\thirdparty\jquerymobile-1.4.5\jquery.mobile.custom.structure.min.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\velocity.min.js">
+ <Content Include="dashboard-ui\thirdparty\jquerymobile-1.4.5\jquery.mobile.custom.theme.min.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\CustomElements.min.js">
+ <Content Include="dashboard-ui\thirdparty\paper-button-style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\HTMLImports.min.js">
+ <Content Include="dashboard-ui\thirdparty\polymer\LICENSE.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\MutationObserver.min.js">
+ <Content Include="dashboard-ui\thirdparty\polymer\polymer-micro.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\ShadowDOM.min.js">
+ <Content Include="dashboard-ui\thirdparty\polymer\polymer-mini.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\webcomponents-lite.min.js">
+ <Content Include="dashboard-ui\thirdparty\polymer\polymer.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\webcomponentsjs\webcomponents.min.js">
+ <Content Include="dashboard-ui\thirdparty\velocity.min.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="dashboard-ui\voice\voice.css">
@@ -386,9 +809,6 @@
<Content Include="dashboard-ui\css\chromecast.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\icons.css">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\clients\amazon.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -407,51 +827,6 @@
<Content Include="dashboard-ui\css\images\favicon.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\images\icons\ellipsis-v.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\remote.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\audiocd.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\expand.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\filter.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\mute.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\nexttrack.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\pause.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\play.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\previoustrack.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\sort.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\stop.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\subtitles.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\volumedown.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\icons\volumeup.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\items\detail\tv.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -716,18 +1091,6 @@
<Content Include="dashboard-ui\css\images\fresh.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\images\items\searchhintsv2\film.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\items\searchhintsv2\game.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\items\searchhintsv2\music.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\items\searchhintsv2\person.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\items\searchhintsv2\tv.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -740,27 +1103,12 @@
<Content Include="dashboard-ui\css\images\items\detail\person.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\images\items\list\audio.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\items\list\audiocollection.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\items\list\chapter.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\images\items\list\game.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="dashboard-ui\css\images\items\list\gamecollection.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\items\list\person.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\css\images\items\list\video.png">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\css\images\supporter\nonsupporterbadge.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -1742,9 +2090,6 @@
<Content Include="dashboard-ui\thirdparty\require.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\thirdparty\requirecss.js">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\thirdparty\swipebox-master\css\swipebox.min.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -2338,22 +2683,172 @@
</Content>
</ItemGroup>
<ItemGroup>
+ <None Include="dashboard-ui\bower_components\iron-a11y-announcer\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-a11y-announcer\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-a11y-announcer\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-a11y-keys-behavior\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-behaviors\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-behaviors\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-behaviors\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-fit-behavior\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-fit-behavior\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-fit-behavior\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-flex-layout\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-flex-layout\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-flex-layout\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-iconset-svg\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-iconset-svg\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-iconset-svg\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-icons\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-icons\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-icons\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-icon\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-icon\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-icon\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-meta\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-meta\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-meta\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-overlay-behavior\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-overlay-behavior\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-overlay-behavior\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-resizable-behavior\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-resizable-behavior\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-resizable-behavior\README.md" />
+ <None Include="dashboard-ui\bower_components\iron-selector\.bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-selector\bower.json" />
+ <None Include="dashboard-ui\bower_components\iron-selector\README.md" />
+ <None Include="dashboard-ui\bower_components\neon-animation\.bower.json" />
+ <None Include="dashboard-ui\bower_components\neon-animation\bower.json" />
+ <None Include="dashboard-ui\bower_components\neon-animation\guides\neon-animation.md" />
+ <None Include="dashboard-ui\bower_components\neon-animation\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-behaviors\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-behaviors\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-behaviors\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-button\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-button\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-button\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-behavior\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-behavior\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-behavior\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-scrollable\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-scrollable\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog-scrollable\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-dialog\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-dialog\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-fab\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-fab\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-fab\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-material\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-material\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-material\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-ripple\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-ripple\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-ripple\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-spinner\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-spinner\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-spinner\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-styles\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-styles\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-styles\README.md" />
+ <None Include="dashboard-ui\bower_components\paper-toast\.bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-toast\bower.json" />
+ <None Include="dashboard-ui\bower_components\paper-toast\README.md" />
+ <None Include="dashboard-ui\bower_components\polymer\.bower.json" />
+ <None Include="dashboard-ui\bower_components\polymer\bower.json" />
+ <None Include="dashboard-ui\bower_components\polymer\build.log" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\.bower.json" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\bower.json" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\COPYING" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\History.md" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\README.md" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\web-animations-next-lite.min.js.map" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\web-animations-next.min.js.map" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\web-animations.min.js.gz" />
+ <None Include="dashboard-ui\bower_components\web-animations-js\web-animations.min.js.map" />
+ <None Include="dashboard-ui\bower_components\webcomponentsjs\.bower.json" />
+ <None Include="dashboard-ui\bower_components\webcomponentsjs\bower.json" />
+ <None Include="dashboard-ui\bower_components\webcomponentsjs\build.log" />
+ <None Include="dashboard-ui\bower_components\webcomponentsjs\package.json" />
+ <None Include="dashboard-ui\bower_components\webcomponentsjs\README.md" />
+ <None Include="dashboard-ui\css\fonts\roboto\RobotoBold.woff">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\RobotoLight.woff">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\RobotoMedium.woff">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\RobotoRegular.woff">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\RobotoThin.woff">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\-L14Jk06m6pUHB-5mXQQnRJtnKITppOI_IvcXXDNrsc.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\0eC6fl06luXEYWpBSJvXCBJtnKITppOI_IvcXXDNrsc.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\2tsd397wLxj96qwHyNIkxPesZW2xOQ-xsNqO47m55DA.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\aZMswpodYeVhtRvuABJWvBTbgVql8nDJpwnrE27mub0.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\CWB0XYA8bzo0kSThX0UTuA.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\e7MeVAyvogMqFwwl61PKhBTbgVql8nDJpwnrE27mub0.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\Fl4y0QdOxyyTHEGMXX8kcRJtnKITppOI_IvcXXDNrsc.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\frNV30OaYdlFRtH2VnZZdhTbgVql8nDJpwnrE27mub0.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\gwVJDERN2Amz39wrSoZ7FxTbgVql8nDJpwnrE27mub0.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
<None Include="dashboard-ui\css\fonts\Montserrat.woff">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\css\fonts\RobotoBold.woff">
+ <None Include="dashboard-ui\css\fonts\roboto\Hgo13k-tfSpn0qi1SFdUfVtXRa8TVwTICgirnJhmVJw.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\I3S1wsgSg9YCurV6PUkTORJtnKITppOI_IvcXXDNrsc.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\NYDWBdD4gIq26G5XYbHsFBJtnKITppOI_IvcXXDNrsc.woff2">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\css\fonts\RobotoLight.woff">
+ <None Include="dashboard-ui\css\fonts\roboto\oOeFwZNlrTefzLYmlVV1UBJtnKITppOI_IvcXXDNrsc.woff2">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\css\fonts\RobotoMedium.woff">
+ <None Include="dashboard-ui\css\fonts\roboto\Pru33qjShpZSmG3z6VYwnRJtnKITppOI_IvcXXDNrsc.woff2">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\css\fonts\RobotoRegular.woff">
+ <None Include="dashboard-ui\css\fonts\roboto\RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\css\fonts\RobotoThin.woff">
+ <None Include="dashboard-ui\css\fonts\roboto\ty9dfvLAziwdqQ2dHoyjphTbgVql8nDJpwnrE27mub0.woff2">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="dashboard-ui\css\fonts\roboto\VvXUGKZXbHtX_S_VCTLpGhTbgVql8nDJpwnrE27mub0.woff2">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="dashboard-ui\thirdparty\fontawesome\css\font-awesome.css.map">
@@ -2392,15 +2887,6 @@
<None Include="dashboard-ui\thirdparty\polymer\bower.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="dashboard-ui\thirdparty\webcomponentsjs\bower.json">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="dashboard-ui\thirdparty\webcomponentsjs\package.json">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="dashboard-ui\thirdparty\webcomponentsjs\README.md">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup />