From 4678528d0028685b45c7c6daa2e24b72a363535b Mon Sep 17 00:00:00 2001 From: Erwin de Haan Date: Wed, 9 Jan 2019 12:36:54 +0100 Subject: [PATCH] First separation commit. Added LICENSE, README.md, CONTRIBUTORS.md --- CONTRIBUTORS.md | 76 ++++ LICENSE | 339 ++++++++++++++++++ README.md | 7 + {dashboard-ui => src}/addplugin.html | 0 {dashboard-ui => src}/appservices.html | 0 .../bower_components/Sortable/Sortable.html | 0 .../bower_components/Sortable/Sortable.min.js | 0 .../bower_components/Sortable/index.html | 0 .../Sortable/jquery.binding.js | 0 .../Sortable/knockout-sortable.js | 0 .../bower_components/Sortable/ng-sortable.js | 0 .../Sortable/react-sortable-mixin.js | 0 .../Swiper/dist/css/swiper.min.css | 0 .../Swiper/dist/js/swiper.min.js | 0 .../bower_components/Swiper/package.js | 0 .../bower_components/alameda/alameda.js | 0 .../document-register-element/basic.html | 0 .../build/document-register-element.js | 0 .../emby-apiclient/apiclient.js | 0 .../emby-apiclient/apiclientex.js | 0 .../emby-apiclient/appstorage-cache.js | 0 .../emby-apiclient/appstorage-localstorage.js | 0 .../emby-apiclient/appstorage-memory.js | 0 .../emby-apiclient/cameraroll.js | 0 .../emby-apiclient/connectionmanager.js | 0 .../emby-apiclient/credentials.js | 0 .../bower_components/emby-apiclient/events.js | 0 .../emby-apiclient/fileupload.js | 0 .../emby-apiclient/localassetmanager.js | 0 .../emby-apiclient/serverdiscovery.js | 0 .../emby-apiclient/sync/contentuploader.js | 0 .../emby-apiclient/sync/filerepository.js | 0 .../emby-apiclient/sync/itemrepository.js | 0 .../emby-apiclient/sync/localsync.js | 0 .../emby-apiclient/sync/mediasync.js | 0 .../emby-apiclient/sync/multiserversync.js | 0 .../emby-apiclient/sync/serversync.js | 0 .../emby-apiclient/sync/transfermanager.js | 0 .../sync/useractionrepository.js | 0 .../emby-apiclient/wakeonlan.js | 0 .../actionsheet/actionsheet.css | 0 .../actionsheet/actionsheet.js | 0 .../emby-webcomponents/alert/alert.js | 0 .../emby-webcomponents/alert/nativealert.js | 0 .../alphanumericshortcuts.js | 0 .../alphapicker/alphapicker.js | 0 .../emby-webcomponents/alphapicker/style.css | 0 .../appfooter/appfooter.css | 0 .../emby-webcomponents/appfooter/appfooter.js | 0 .../emby-webcomponents/appsettings.js | 0 .../emby-webcomponents/backdrop/backdrop.js | 0 .../emby-webcomponents/backdrop/style.css | 0 .../emby-webcomponents/browser.js | 0 .../browserdeviceprofile.js | 0 .../emby-webcomponents/cardbuilder/card.css | 0 .../cardbuilder/cardbuilder.js | 0 .../cardbuilder/chaptercardbuilder.js | 0 .../cardbuilder/peoplecardbuilder.js | 0 .../cardbuilder/roundcard.css | 0 .../chromecast/chromecasthelpers.js | 0 .../chromecast/chromecastplayer.js | 0 .../emby-webcomponents/clearbutton.css | 0 .../collectioneditor/collectioneditor.js | 0 .../emby-webcomponents/confirm/confirm.js | 0 .../confirm/nativeconfirm.js | 0 .../emby-webcomponents/datetime.js | 0 .../emby-webcomponents/deletehelper.js | 0 .../emby-webcomponents/dialog/dialog.js | 0 .../dialog/dialog.template.html | 0 .../dialoghelper/dialoghelper.css | 0 .../dialoghelper/dialoghelper.js | 0 .../displaysettings/displaysettings.js | 0 .../displaysettings.template.html | 0 .../emby-webcomponents/dom.js | 0 .../emby-button/emby-button.css | 0 .../emby-button/emby-button.js | 0 .../emby-button/paper-icon-button-light.js | 0 .../emby-checkbox/emby-checkbox.css | 0 .../emby-checkbox/emby-checkbox.js | 0 .../emby-collapse/emby-collapse.css | 0 .../emby-collapse/emby-collapse.js | 0 .../emby-connect/connecthelper.js | 0 .../emby-input/emby-input.css | 0 .../emby-input/emby-input.js | 0 .../emby-itemrefreshindicator.js | 0 .../emby-itemscontainer.js | 0 .../emby-progressring/emby-progressring.css | 0 .../emby-progressring/emby-progressring.js | 0 .../emby-progressring.template.html | 0 .../emby-radio/emby-radio.css | 0 .../emby-radio/emby-radio.js | 0 .../emby-scrollbuttons/emby-scrollbuttons.css | 0 .../emby-scrollbuttons/emby-scrollbuttons.js | 0 .../emby-scroller/emby-scroller.js | 0 .../emby-select/emby-select.css | 0 .../emby-select/emby-select.js | 0 .../emby-slider/emby-slider.css | 0 .../emby-slider/emby-slider.js | 0 .../emby-tabs/emby-tabs.css | 0 .../emby-webcomponents/emby-tabs/emby-tabs.js | 0 .../emby-textarea/emby-textarea.css | 0 .../emby-textarea/emby-textarea.js | 0 .../emby-toggle/emby-toggle.css | 0 .../emby-toggle/emby-toggle.js | 0 .../emby-webcomponents/fetchhelper.js | 0 .../emby-webcomponents/filedownloader.js | 0 .../emby-webcomponents/filesystem.js | 0 .../filtermenu/filtermenu.js | 0 .../filtermenu/filtermenu.template.html | 0 .../emby-webcomponents/flexstyles.css | 0 .../emby-webcomponents/flvjs/flv.min.js | 0 .../emby-webcomponents/focusmanager.js | 0 .../emby-webcomponents/fonts/fonts.css | 0 .../emby-webcomponents/fonts/fonts.sized.css | 0 .../flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff | Bin .../flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 | Bin .../fonts/material-icons/style.css | 0 .../emby-webcomponents/formdialog.css | 0 .../fullscreen/fullscreen-dc.js | 0 .../fullscreen/fullscreenmanager.js | 0 .../emby-webcomponents/globalize.js | 0 .../guide/guide-settings.js | 0 .../guide/guide-settings.template.html | 0 .../emby-webcomponents/guide/guide.css | 0 .../emby-webcomponents/guide/guide.js | 0 .../emby-webcomponents/guide/programs.css | 0 .../guide/tvguide.template.html | 0 .../emby-webcomponents/headroom/headroom.css | 0 .../emby-webcomponents/headroom/headroom.js | 0 .../homescreensettings/homescreensettings.js | 0 .../homescreensettings.template.html | 0 .../homescreensettingsdialog.js | 0 .../homescreensettingsdialog.template.html | 0 .../homesections/homesections.css | 0 .../homesections/homesections.js | 0 .../htmlaudioplayer/plugin.js | 0 .../htmlvideoplayer/htmlmediahelper.js | 0 .../htmlvideoplayer/plugin.js | 0 .../htmlvideoplayer/style.css | 0 .../imagedownloader/imagedownloader.js | 0 .../imagedownloader.template.html | 0 .../imageeditor/imageeditor.css | 0 .../imageeditor/imageeditor.js | 0 .../imageeditor/imageeditor.template.html | 0 .../images/basicimagefetcher.js | 0 .../emby-webcomponents/images/imagehelper.js | 0 .../emby-webcomponents/images/style.css | 0 .../imageuploader/imageuploader.js | 0 .../imageuploader/imageuploader.template.html | 0 .../imageuploader/style.css | 0 .../indicators/indicators.css | 0 .../indicators/indicators.js | 0 .../emby-webcomponents/input/api.js | 0 .../emby-webcomponents/input/gamepadtokey.js | 0 .../emby-webcomponents/input/mouse.js | 0 .../emby-webcomponents/inputmanager.js | 0 .../emby-webcomponents/itemcontextmenu.js | 0 .../emby-webcomponents/itemhelper.js | 0 .../itemidentifier/itemidentifier.js | 0 .../itemidentifier.template.html | 0 .../emby-webcomponents/itemsrefresher.js | 0 .../emby-webcomponents/layoutmanager.js | 0 .../lazyloader/lazyedgehack.css | 0 .../lazyloader-intersectionobserver.js | 0 .../lazyloader/lazyloader-scroll.js | 0 .../emby-webcomponents/listview/listview.css | 0 .../emby-webcomponents/listview/listview.js | 0 .../emby-webcomponents/loading/loader2.gif | Bin .../loading/loading-legacy.css | 0 .../loading/loading-legacy.js | 0 .../loading/loading-lite.css | 0 .../loading/loading-lite.js | 0 .../loadingdialog/loadingdialog.js | 0 .../emby-webcomponents/maintabsmanager.js | 0 .../emby-webcomponents/mediainfo/fresh.png | Bin .../mediainfo/mediainfo.css | 0 .../emby-webcomponents/mediainfo/mediainfo.js | 0 .../emby-webcomponents/mediainfo/rotten.png | Bin .../metadataeditor/metadataeditor.js | 0 .../metadataeditor.template.html | 0 .../metadataeditor/personeditor.js | 0 .../metadataeditor/personeditor.template.html | 0 .../emby-webcomponents/multidownload.js | 0 .../multiselect/multiselect.css | 0 .../multiselect/multiselect.js | 0 .../native-promise-only/lib/npo.src.js | 0 .../native-promise-only/test_adapter.js | 0 .../notifications/badge.png | Bin .../notifications/notificationicon.png | Bin .../notifications/notifications.js | 0 .../nowplayingbar/nowplayingbar.css | 0 .../nowplayingbar/nowplayingbar.js | 0 .../emby-webcomponents/packagemanager.js | 0 .../emby-webcomponents/pagejs/page.js | 0 .../emby-webcomponents/photoplayer/plugin.js | 0 .../playback/autoplaydetect.js | 0 .../playback/brightnessosd.js | 0 .../playback/experimentalwarnings.js | 0 .../emby-webcomponents/playback/iconosd.css | 0 .../playback/mediasession.js | 0 .../playback/nowplayinghelper.js | 0 .../playback/playaccessvalidation.js | 0 .../playback/playbackmanager.js | 0 .../playback/playbackorientation.js | 0 .../playback/playbackvalidation.js | 0 .../playback/playerselection.js | 0 .../playback/playersettingsmenu.js | 0 .../playback/playmethodhelper.js | 0 .../playback/playqueuemanager.js | 0 .../playback/remotecontrolautoplay.js | 0 .../emby-webcomponents/playback/volumeosd.js | 0 .../playbacksettings/playbacksettings.js | 0 .../playbacksettings.template.html | 0 .../playerstats/playerstats.css | 0 .../playerstats/playerstats.js | 0 .../playlisteditor/playlisteditor.js | 0 .../emby-webcomponents/playmenu.js | 0 .../emby-webcomponents/pluginmanager.js | 0 .../emby-webcomponents/polyfills/array.js | 0 .../emby-webcomponents/polyfills/bind.js | 0 .../polyfills/objectassign.js | 0 .../emby-webcomponents/polyfills/raf.js | 0 .../emby-webcomponents/prompt/nativeprompt.js | 0 .../emby-webcomponents/prompt/prompt.js | 0 .../prompt/prompt.template.html | 0 .../emby-webcomponents/qualityoptions.js | 0 .../recordingcreator/empty.png | Bin .../recordingcreator/recordingbutton.js | 0 .../recordingcreator/recordingcreator.css | 0 .../recordingcreator/recordingcreator.js | 0 .../recordingcreator.template.html | 0 .../recordingcreator/recordingeditor.js | 0 .../recordingeditor.template.html | 0 .../recordingcreator/recordingfields.css | 0 .../recordingcreator/recordingfields.js | 0 .../recordingfields.template.html | 0 .../recordingcreator/recordinghelper.js | 0 .../recordingcreator/seriesrecordingeditor.js | 0 .../seriesrecordingeditor.template.html | 0 .../refreshdialog/refreshdialog.js | 0 .../registrationservices.js | 0 .../emby-webcomponents/require/requirecss.js | 0 .../emby-webcomponents/require/requiretext.js | 0 .../ResizeObserver.js | 0 .../emby-webcomponents/router.js | 0 .../emby-webcomponents/sanitizefilename.js | 0 .../scroller/smoothscroller.js | 0 .../emby-webcomponents/scrollhelper.js | 0 .../emby-webcomponents/scrollstyles.css | 0 .../search/searchfields.css | 0 .../emby-webcomponents/search/searchfields.js | 0 .../search/searchfields.template.html | 0 .../search/searchresults.js | 0 .../search/searchresults.template.html | 0 .../serverrestartdialog.js | 0 .../serviceworker/notifications.js | 0 .../emby-webcomponents/serviceworker/sync.js | 0 .../emby-webcomponents/sessionplayer.js | 0 .../emby-webcomponents/shell.js | 0 .../emby-webcomponents/shortcuts.js | 0 .../emby-webcomponents/skinmanager.js | 0 .../emby-webcomponents/slideshow/slideshow.js | 0 .../emby-webcomponents/slideshow/style.css | 0 .../emby-webcomponents/sortmenu/sortmenu.js | 0 .../sortmenu/sortmenu.template.html | 0 .../emby-webcomponents/staticbackdrops.js | 0 .../emby-webcomponents/strings/ar.json | 0 .../emby-webcomponents/strings/be-by.json | 0 .../emby-webcomponents/strings/bg-bg.json | 0 .../emby-webcomponents/strings/ca.json | 0 .../emby-webcomponents/strings/cs.json | 0 .../emby-webcomponents/strings/da.json | 0 .../emby-webcomponents/strings/de.json | 0 .../emby-webcomponents/strings/el.json | 0 .../emby-webcomponents/strings/en-gb.json | 0 .../emby-webcomponents/strings/en-us.json | 0 .../emby-webcomponents/strings/es-ar.json | 0 .../emby-webcomponents/strings/es-mx.json | 0 .../emby-webcomponents/strings/es.json | 0 .../emby-webcomponents/strings/fi.json | 0 .../emby-webcomponents/strings/fr-ca.json | 0 .../emby-webcomponents/strings/fr.json | 0 .../emby-webcomponents/strings/gsw.json | 0 .../emby-webcomponents/strings/he.json | 0 .../emby-webcomponents/strings/hr.json | 0 .../emby-webcomponents/strings/hu.json | 0 .../emby-webcomponents/strings/id.json | 0 .../emby-webcomponents/strings/it.json | 0 .../emby-webcomponents/strings/kk.json | 0 .../emby-webcomponents/strings/ko.json | 0 .../emby-webcomponents/strings/lt-lt.json | 0 .../emby-webcomponents/strings/ms.json | 0 .../emby-webcomponents/strings/nb.json | 0 .../emby-webcomponents/strings/nl.json | 0 .../emby-webcomponents/strings/pl.json | 0 .../emby-webcomponents/strings/pt-br.json | 0 .../emby-webcomponents/strings/pt-pt.json | 0 .../emby-webcomponents/strings/ro.json | 0 .../emby-webcomponents/strings/ru.json | 0 .../emby-webcomponents/strings/sk.json | 0 .../emby-webcomponents/strings/sl-si.json | 0 .../emby-webcomponents/strings/sv.json | 0 .../emby-webcomponents/strings/tr.json | 0 .../emby-webcomponents/strings/uk.json | 0 .../emby-webcomponents/strings/vi.json | 0 .../emby-webcomponents/strings/zh-cn.json | 0 .../emby-webcomponents/strings/zh-hk.json | 0 .../emby-webcomponents/strings/zh-tw.json | 0 .../subtitleeditor/subtitleeditor.css | 0 .../subtitleeditor/subtitleeditor.js | 0 .../subtitleeditor.template.html | 0 .../subtitleappearancehelper.js | 0 .../subtitlesettings/subtitlesettings.js | 0 .../subtitlesettings.template.html | 0 .../sync/emby-downloadbutton.js | 0 .../emby-webcomponents/sync/sync.js | 0 .../emby-webcomponents/sync/syncjobeditor.js | 0 .../emby-webcomponents/sync/syncjoblist.js | 0 .../emby-webcomponents/tabbedview/itemstab.js | 0 .../tabbedview/tabbedview.js | 0 .../emby-webcomponents/thememediaplayer.js | 0 .../themes/appletv/theme.css | 0 .../themes/blueradiance/bg.jpg | Bin .../themes/blueradiance/theme.css | 0 .../themes/dark-classic/theme.css | 0 .../themes/dark-green/theme.css | 0 .../themes/dark-red/theme.css | 0 .../emby-webcomponents/themes/dark/theme.css | 0 .../themes/halloween/theme.css | 0 .../themes/light-blue/theme.css | 0 .../themes/light-classic/theme.css | 0 .../themes/light-green/theme.css | 0 .../themes/light-pink/theme.css | 0 .../themes/light-purple/theme.css | 0 .../themes/light-red/theme.css | 0 .../emby-webcomponents/themes/light/theme.css | 0 .../emby-webcomponents/themes/logodark.png | Bin .../emby-webcomponents/themes/logowhite.png | Bin .../emby-webcomponents/themes/wmc/theme.css | 0 .../emby-webcomponents/toast/toast.css | 0 .../emby-webcomponents/toast/toast.js | 0 .../emby-webcomponents/touchhelper.js | 0 .../upnextdialog/upnextdialog.css | 0 .../upnextdialog/upnextdialog.js | 0 .../userdatabuttons/emby-playstatebutton.js | 0 .../userdatabuttons/emby-ratingbutton.js | 0 .../userdatabuttons/userdatabuttons.css | 0 .../userdatabuttons/userdatabuttons.js | 0 .../usersettings/usersettings.js | 0 .../usersettings/usersettingsbuilder.js | 0 .../viewmanager/viewcontainer-lite.css | 0 .../viewmanager/viewcontainer-lite.js | 0 .../viewmanager/viewmanager.js | 0 .../viewsettings/viewsettings.js | 0 .../viewsettings/viewsettings.template.html | 0 .../emby-webcomponents/visibleinviewport.js | 0 .../youtubeplayer/plugin.js | 0 .../youtubeplayer/style.css | 0 .../bower_components/fetch/fetch.js | 0 .../bower_components/hlsjs/dist/hls.min.js | 0 .../hlsjs/hls.js.sublime-project | 0 .../howlerjs/dist/howler.min.js | 0 .../jquery/dist/jquery.slim.min.js | 0 .../bower_components/libjass/libjass.css | 0 .../bower_components/libjass/libjass.min.js | 0 .../bower_components/query-string/index.js | 0 .../bower_components/query-string/test.js | 0 .../bower_components/requirejs/require.js | 0 .../webcomponentsjs/webcomponents-lite.min.js | 0 .../camerauploadsettings.html | 0 .../accessschedule/accessschedule.js | 0 .../accessschedule.template.html | 0 .../components/activitylog.js | 0 {dashboard-ui => src}/components/apphost.js | 0 .../components/categorysyncbuttons.js | 0 .../components/channelmapper/channelmapper.js | 0 .../directorybrowser/directorybrowser.css | 0 .../directorybrowser/directorybrowser.js | 0 .../components/favoriteitems.js | 0 .../components/filterdialog/filterdialog.js | 0 .../filterdialog/filterdialog.template.html | 0 .../components/filterdialog/style.css | 0 .../components/groupedcards.js | 0 .../components/guestinviter/guestinviter.js | 0 .../guestinviter/guestinviter.template.html | 0 .../components/humanedate.js | 0 {dashboard-ui => src}/components/iap.js | 0 .../imageoptionseditor/imageoptionseditor.js | 0 .../imageoptionseditor.template.html | 0 .../libraryoptionseditor.js | 0 .../libraryoptionseditor.template.html | 0 .../medialibrarycreator.js | 0 .../medialibrarycreator.template.html | 0 .../medialibraryeditor/medialibraryeditor.js | 0 .../medialibraryeditor.template.html | 0 .../components/navdrawer/navdrawer.css | 0 .../components/navdrawer/navdrawer.js | 0 .../components/remotecontrol.js | 0 .../components/tunerpicker.js | 0 .../components/tvproviders/schedulesdirect.js | 0 .../tvproviders/schedulesdirect.template.html | 0 .../components/tvproviders/xmltv.js | 0 .../tvproviders/xmltv.template.html | 0 .../components/viewcontainer-lite.js | 0 {dashboard-ui => src}/css/dashboard.css | 0 {dashboard-ui => src}/css/detailtable.css | 0 .../css/images/ani_equalizer_white.gif | Bin .../css/images/logindefault.png | Bin .../css/images/logoblack.png | Bin {dashboard-ui => src}/css/librarybrowser.css | 0 {dashboard-ui => src}/css/livetv.css | 0 {dashboard-ui => src}/css/metadataeditor.css | 0 {dashboard-ui => src}/css/nowplaying.css | 0 {dashboard-ui => src}/css/site.css | 0 {dashboard-ui => src}/css/videoosd.css | 0 {dashboard-ui => src}/dashboard.html | 0 {dashboard-ui => src}/dashboard/aboutpage.js | 0 .../dashboard/dashboardgeneral.js | 0 .../dashboard/dashboardhosting.js | 0 .../dashboard/devicesupload.js | 0 .../dashboard/librarydisplay.js | 0 .../dashboard/librarysettings.js | 0 .../dashboard/livetvtuner.js | 0 {dashboard-ui => src}/dashboard/logpage.js | 0 .../dashboard/serveractivity.js | 0 .../dashboard/wizardfinishpage.js | 0 .../dashboard/wizardremoteaccess.js | 0 .../dashboard/wizardsettings.js | 0 .../dashboard/wizardstart.js | 0 {dashboard-ui => src}/dashboardgeneral.html | 0 {dashboard-ui => src}/dashboardhosting.html | 0 {dashboard-ui => src}/devices/device.html | 0 {dashboard-ui => src}/devices/device.js | 0 {dashboard-ui => src}/devices/devices.html | 0 {dashboard-ui => src}/devices/devices.js | 0 {dashboard-ui => src}/devices/ios/ios.css | 0 {dashboard-ui => src}/devicesupload.html | 0 {dashboard-ui => src}/dlnaprofile.html | 0 {dashboard-ui => src}/dlnaprofiles.html | 0 {dashboard-ui => src}/dlnasettings.html | 0 {dashboard-ui => src}/edititemmetadata.html | 0 {dashboard-ui => src}/encodingsettings.html | 0 {dashboard-ui => src}/favicon.ico | Bin {dashboard-ui => src}/forgotpassword.html | 0 {dashboard-ui => src}/forgotpasswordpin.html | 0 {dashboard-ui => src}/home.html | 0 {dashboard-ui => src}/home/favorites.js | 0 {dashboard-ui => src}/home/home.js | 0 {dashboard-ui => src}/home/hometab.js | 0 {dashboard-ui => src}/index.html | 0 {dashboard-ui => src}/itemdetails.html | 0 {dashboard-ui => src}/legacy/buttonenabled.js | 0 {dashboard-ui => src}/legacy/dashboard.js | 0 {dashboard-ui => src}/legacy/fnchecked.js | 0 {dashboard-ui => src}/legacy/selectmenu.js | 0 {dashboard-ui => src}/library.html | 0 {dashboard-ui => src}/librarydisplay.html | 0 {dashboard-ui => src}/librarysettings.html | 0 {dashboard-ui => src}/list/list.html | 0 {dashboard-ui => src}/list/list.js | 0 {dashboard-ui => src}/livetv.html | 0 .../livetvguideprovider.html | 0 {dashboard-ui => src}/livetvsettings.html | 0 {dashboard-ui => src}/livetvstatus.html | 0 {dashboard-ui => src}/livetvtuner.html | 0 {dashboard-ui => src}/log.html | 0 {dashboard-ui => src}/login.html | 0 {dashboard-ui => src}/managedownloads.html | 0 {dashboard-ui => src}/manifest.json | 0 {dashboard-ui => src}/metadataimages.html | 0 {dashboard-ui => src}/metadatanfo.html | 0 {dashboard-ui => src}/movies.html | 0 {dashboard-ui => src}/music.html | 0 .../mypreferencesdisplay.html | 0 {dashboard-ui => src}/mypreferenceshome.html | 0 .../mypreferenceslanguages.html | 0 {dashboard-ui => src}/mypreferencesmenu.html | 0 .../mypreferencessubtitles.html | 0 {dashboard-ui => src}/myprofile.html | 0 {dashboard-ui => src}/mysync.html | 0 {dashboard-ui => src}/mysyncjob.html | 0 {dashboard-ui => src}/mysyncsettings.html | 0 .../notificationsetting.html | 0 .../notificationsettings.html | 0 {dashboard-ui => src}/nowplaying.html | 0 .../playbackconfiguration.html | 0 {dashboard-ui => src}/plugincatalog.html | 0 {dashboard-ui => src}/plugins.html | 0 {dashboard-ui => src}/robots.txt | 0 {dashboard-ui => src}/scheduledtask.html | 0 {dashboard-ui => src}/scheduledtasks.html | 0 .../scripts/addpluginpage.js | 0 {dashboard-ui => src}/scripts/apploader.js | 0 {dashboard-ui => src}/scripts/appservices.js | 0 .../scripts/autobackdrops.js | 0 .../scripts/camerauploadsettings.js | 0 {dashboard-ui => src}/scripts/connectlogin.js | 0 .../scripts/dashboardpage.js | 0 {dashboard-ui => src}/scripts/dlnaprofile.js | 0 {dashboard-ui => src}/scripts/dlnaprofiles.js | 0 {dashboard-ui => src}/scripts/dlnasettings.js | 0 .../scripts/edititemmetadata.js | 0 .../scripts/editorsidebar.js | 0 .../scripts/encodingsettings.js | 0 {dashboard-ui => src}/scripts/episodes.js | 0 .../scripts/forgotpassword.js | 0 .../scripts/forgotpasswordpin.js | 0 .../scripts/itembynamedetailpage.js | 0 .../scripts/itemdetailpage.js | 0 .../scripts/librarybrowser.js | 0 {dashboard-ui => src}/scripts/librarymenu.js | 0 .../scripts/livetvchannels.js | 0 .../scripts/livetvcomponents.js | 0 {dashboard-ui => src}/scripts/livetvguide.js | 0 .../scripts/livetvguideprovider.js | 0 .../scripts/livetvrecordings.js | 0 .../scripts/livetvschedule.js | 0 .../scripts/livetvseriestimers.js | 0 .../scripts/livetvsettings.js | 0 {dashboard-ui => src}/scripts/livetvstatus.js | 0 .../scripts/livetvsuggested.js | 0 {dashboard-ui => src}/scripts/loginpage.js | 0 .../scripts/managedownloads.js | 0 .../scripts/medialibrarypage.js | 0 .../scripts/metadataimagespage.js | 0 {dashboard-ui => src}/scripts/metadatanfo.js | 0 .../scripts/moviecollections.js | 0 {dashboard-ui => src}/scripts/moviegenres.js | 0 {dashboard-ui => src}/scripts/movies.js | 0 .../scripts/moviesrecommended.js | 0 .../scripts/movietrailers.js | 0 {dashboard-ui => src}/scripts/musicalbums.js | 0 {dashboard-ui => src}/scripts/musicartists.js | 0 {dashboard-ui => src}/scripts/musicgenres.js | 0 .../scripts/musicplaylists.js | 0 .../scripts/musicrecommended.js | 0 .../scripts/mypreferencescommon.js | 0 .../scripts/mypreferencesdisplay.js | 0 .../scripts/mypreferenceshome.js | 0 .../scripts/mypreferenceslanguages.js | 0 .../scripts/mypreferencessubtitles.js | 0 {dashboard-ui => src}/scripts/myprofile.js | 0 {dashboard-ui => src}/scripts/mysync.js | 0 .../scripts/mysyncsettings.js | 0 .../scripts/notificationsetting.js | 0 .../scripts/notificationsettings.js | 0 .../scripts/nowplayingpage.js | 0 .../scripts/playbackconfiguration.js | 0 {dashboard-ui => src}/scripts/playlistedit.js | 0 {dashboard-ui => src}/scripts/playlists.js | 0 .../scripts/plugincatalogpage.js | 0 {dashboard-ui => src}/scripts/pluginspage.js | 0 .../scripts/scheduledtaskpage.js | 0 .../scripts/scheduledtaskspage.js | 0 {dashboard-ui => src}/scripts/searchpage.js | 0 {dashboard-ui => src}/scripts/searchtab.js | 0 {dashboard-ui => src}/scripts/selectserver.js | 0 .../scripts/serversecurity.js | 0 {dashboard-ui => src}/scripts/site.js | 0 {dashboard-ui => src}/scripts/songs.js | 0 .../scripts/streamingsettings.js | 0 {dashboard-ui => src}/scripts/syncactivity.js | 0 {dashboard-ui => src}/scripts/syncsettings.js | 0 {dashboard-ui => src}/scripts/taskbutton.js | 0 {dashboard-ui => src}/scripts/themeloader.js | 0 {dashboard-ui => src}/scripts/tvgenres.js | 0 {dashboard-ui => src}/scripts/tvlatest.js | 0 .../scripts/tvrecommended.js | 0 {dashboard-ui => src}/scripts/tvshows.js | 0 {dashboard-ui => src}/scripts/tvstudios.js | 0 {dashboard-ui => src}/scripts/tvupcoming.js | 0 {dashboard-ui => src}/scripts/useredit.js | 0 .../scripts/userlibraryaccess.js | 0 {dashboard-ui => src}/scripts/usernew.js | 0 .../scripts/userparentalcontrol.js | 0 {dashboard-ui => src}/scripts/userpassword.js | 0 .../scripts/userpasswordpage.js | 0 .../scripts/userprofilespage.js | 0 {dashboard-ui => src}/scripts/videoosd.js | 0 .../scripts/wizardagreement.js | 0 .../scripts/wizarduserpage.js | 0 {dashboard-ui => src}/search.html | 0 {dashboard-ui => src}/selectserver.html | 0 {dashboard-ui => src}/serveractivity.html | 0 {dashboard-ui => src}/serversecurity.html | 0 {dashboard-ui => src}/serviceworker.js | 0 {dashboard-ui => src}/streamingsettings.html | 0 {dashboard-ui => src}/strings/ar.json | 0 {dashboard-ui => src}/strings/be-BY.json | 0 {dashboard-ui => src}/strings/bg-BG.json | 0 {dashboard-ui => src}/strings/ca.json | 0 {dashboard-ui => src}/strings/cs.json | 0 {dashboard-ui => src}/strings/da.json | 0 {dashboard-ui => src}/strings/de.json | 0 {dashboard-ui => src}/strings/el.json | 0 {dashboard-ui => src}/strings/en-GB.json | 0 {dashboard-ui => src}/strings/en-US.json | 0 {dashboard-ui => src}/strings/es-AR.json | 0 {dashboard-ui => src}/strings/es-MX.json | 0 {dashboard-ui => src}/strings/es.json | 0 {dashboard-ui => src}/strings/fa.json | 0 {dashboard-ui => src}/strings/fi.json | 0 {dashboard-ui => src}/strings/fr-CA.json | 0 {dashboard-ui => src}/strings/fr.json | 0 {dashboard-ui => src}/strings/gsw.json | 0 {dashboard-ui => src}/strings/he.json | 0 {dashboard-ui => src}/strings/hi-IN.json | 0 {dashboard-ui => src}/strings/hr.json | 0 {dashboard-ui => src}/strings/hu.json | 0 {dashboard-ui => src}/strings/id.json | 0 {dashboard-ui => src}/strings/is-IS.json | 0 {dashboard-ui => src}/strings/it.json | 0 {dashboard-ui => src}/strings/kk.json | 0 {dashboard-ui => src}/strings/ko.json | 0 {dashboard-ui => src}/strings/lt-LT.json | 0 {dashboard-ui => src}/strings/ms.json | 0 {dashboard-ui => src}/strings/nb.json | 0 {dashboard-ui => src}/strings/nl.json | 0 {dashboard-ui => src}/strings/no.json | 0 {dashboard-ui => src}/strings/pl.json | 0 {dashboard-ui => src}/strings/pt-BR.json | 0 {dashboard-ui => src}/strings/pt-PT.json | 0 {dashboard-ui => src}/strings/ro.json | 0 {dashboard-ui => src}/strings/ru.json | 0 {dashboard-ui => src}/strings/sk.json | 0 {dashboard-ui => src}/strings/sl-SI.json | 0 {dashboard-ui => src}/strings/sv.json | 0 {dashboard-ui => src}/strings/tr.json | 0 {dashboard-ui => src}/strings/uk.json | 0 {dashboard-ui => src}/strings/vi.json | 0 {dashboard-ui => src}/strings/zh-CN.json | 0 {dashboard-ui => src}/strings/zh-HK.json | 0 {dashboard-ui => src}/strings/zh-TW.json | 0 {dashboard-ui => src}/syncactivity.html | 0 {dashboard-ui => src}/syncsettings.html | 0 .../thirdparty/jstree/jstree.js | 0 .../thirdparty/jstree/themes/default/32px.png | Bin .../jstree/themes/default/style.css | 0 .../jstree/themes/default/throbber.gif | Bin {dashboard-ui => src}/touchicon.png | Bin {dashboard-ui => src}/touchicon114.png | Bin {dashboard-ui => src}/touchicon144.png | Bin {dashboard-ui => src}/touchicon72.png | Bin {dashboard-ui => src}/tv.html | 0 {dashboard-ui => src}/useredit.html | 0 {dashboard-ui => src}/userlibraryaccess.html | 0 {dashboard-ui => src}/usernew.html | 0 .../userparentalcontrol.html | 0 {dashboard-ui => src}/userpassword.html | 0 {dashboard-ui => src}/userprofiles.html | 0 {dashboard-ui => src}/videoosd.html | 0 {dashboard-ui => src}/wizardfinish.html | 0 {dashboard-ui => src}/wizardlibrary.html | 0 {dashboard-ui => src}/wizardremoteaccess.html | 0 {dashboard-ui => src}/wizardsettings.html | 0 {dashboard-ui => src}/wizardstart.html | 0 {dashboard-ui => src}/wizarduser.html | 0 657 files changed, 422 insertions(+) create mode 100644 CONTRIBUTORS.md create mode 100644 LICENSE create mode 100644 README.md rename {dashboard-ui => src}/addplugin.html (100%) rename {dashboard-ui => src}/appservices.html (100%) rename {dashboard-ui => src}/bower_components/Sortable/Sortable.html (100%) rename {dashboard-ui => src}/bower_components/Sortable/Sortable.min.js (100%) rename {dashboard-ui => src}/bower_components/Sortable/index.html (100%) rename {dashboard-ui => src}/bower_components/Sortable/jquery.binding.js (100%) rename {dashboard-ui => src}/bower_components/Sortable/knockout-sortable.js (100%) rename {dashboard-ui => src}/bower_components/Sortable/ng-sortable.js (100%) rename {dashboard-ui => src}/bower_components/Sortable/react-sortable-mixin.js (100%) rename {dashboard-ui => src}/bower_components/Swiper/dist/css/swiper.min.css (100%) rename {dashboard-ui => src}/bower_components/Swiper/dist/js/swiper.min.js (100%) rename {dashboard-ui => src}/bower_components/Swiper/package.js (100%) rename {dashboard-ui => src}/bower_components/alameda/alameda.js (100%) rename {dashboard-ui => src}/bower_components/document-register-element/basic.html (100%) rename {dashboard-ui => src}/bower_components/document-register-element/build/document-register-element.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/apiclient.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/apiclientex.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/appstorage-cache.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/appstorage-localstorage.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/appstorage-memory.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/cameraroll.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/connectionmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/credentials.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/events.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/fileupload.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/localassetmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/serverdiscovery.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/contentuploader.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/filerepository.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/itemrepository.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/localsync.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/mediasync.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/multiserversync.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/serversync.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/transfermanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/sync/useractionrepository.js (100%) rename {dashboard-ui => src}/bower_components/emby-apiclient/wakeonlan.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/actionsheet/actionsheet.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/actionsheet/actionsheet.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/alert/alert.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/alert/nativealert.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/alphanumericshortcuts/alphanumericshortcuts.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/alphapicker/alphapicker.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/alphapicker/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/appfooter/appfooter.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/appfooter/appfooter.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/appsettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/backdrop/backdrop.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/backdrop/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/browser.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/browserdeviceprofile.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/cardbuilder/card.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/cardbuilder/cardbuilder.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/cardbuilder/chaptercardbuilder.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/cardbuilder/peoplecardbuilder.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/cardbuilder/roundcard.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/chromecast/chromecasthelpers.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/chromecast/chromecastplayer.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/clearbutton.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/confirm/confirm.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/confirm/nativeconfirm.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/datetime.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/deletehelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/dialog/dialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/dialog/dialog.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/dialoghelper/dialoghelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/displaysettings/displaysettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/displaysettings/displaysettings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/dom.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-button/emby-button.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-button/emby-button.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-button/paper-icon-button-light.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-collapse/emby-collapse.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-collapse/emby-collapse.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-connect/connecthelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-input/emby-input.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-input/emby-input.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-itemrefreshindicator/emby-itemrefreshindicator.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-itemscontainer/emby-itemscontainer.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-progressring/emby-progressring.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-progressring/emby-progressring.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-progressring/emby-progressring.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-radio/emby-radio.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-radio/emby-radio.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-scroller/emby-scroller.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-select/emby-select.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-select/emby-select.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-slider/emby-slider.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-slider/emby-slider.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-tabs/emby-tabs.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-tabs/emby-tabs.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-textarea/emby-textarea.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-textarea/emby-textarea.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-toggle/emby-toggle.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/emby-toggle/emby-toggle.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fetchhelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/filedownloader.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/filesystem.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/filtermenu/filtermenu.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/filtermenu/filtermenu.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/flexstyles.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/flvjs/flv.min.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/focusmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fonts/fonts.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fonts/fonts.sized.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fonts/material-icons/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/formdialog.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fullscreen/fullscreen-dc.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/fullscreen/fullscreenmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/globalize.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/guide-settings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/guide-settings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/guide.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/guide.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/programs.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/guide/tvguide.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/headroom/headroom.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/headroom/headroom.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homescreensettings/homescreensettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homescreensettings/homescreensettings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homesections/homesections.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/homesections/homesections.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/htmlaudioplayer/plugin.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/htmlvideoplayer/htmlmediahelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/htmlvideoplayer/plugin.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/htmlvideoplayer/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imagedownloader/imagedownloader.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imagedownloader/imagedownloader.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageeditor/imageeditor.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageeditor/imageeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageeditor/imageeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/images/basicimagefetcher.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/images/imagehelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/images/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageuploader/imageuploader.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageuploader/imageuploader.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/imageuploader/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/indicators/indicators.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/indicators/indicators.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/input/api.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/input/gamepadtokey.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/input/mouse.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/inputmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/itemcontextmenu.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/itemhelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/itemidentifier/itemidentifier.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/itemsrefresher.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/layoutmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/lazyloader/lazyedgehack.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/lazyloader/lazyloader-intersectionobserver.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/lazyloader/lazyloader-scroll.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/listview/listview.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/listview/listview.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loading/loader2.gif (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loading/loading-legacy.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loading/loading-legacy.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loading/loading-lite.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loading/loading-lite.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/loadingdialog/loadingdialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/maintabsmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/mediainfo/fresh.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/mediainfo/mediainfo.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/mediainfo/mediainfo.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/mediainfo/rotten.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/metadataeditor/personeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/multidownload.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/multiselect/multiselect.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/multiselect/multiselect.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/native-promise-only/lib/npo.src.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/native-promise-only/test_adapter.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/notifications/badge.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/notifications/notificationicon.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/notifications/notifications.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/packagemanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/pagejs/page.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/photoplayer/plugin.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/autoplaydetect.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/brightnessosd.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/experimentalwarnings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/iconosd.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/mediasession.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/nowplayinghelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playaccessvalidation.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playbackmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playbackorientation.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playbackvalidation.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playerselection.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playersettingsmenu.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playmethodhelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/playqueuemanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/remotecontrolautoplay.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playback/volumeosd.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playbacksettings/playbacksettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playbacksettings/playbacksettings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playerstats/playerstats.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playerstats/playerstats.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/playmenu.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/pluginmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/polyfills/array.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/polyfills/bind.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/polyfills/objectassign.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/polyfills/raf.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/prompt/nativeprompt.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/prompt/prompt.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/prompt/prompt.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/qualityoptions.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/empty.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingbutton.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingcreator.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingfields.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingfields.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/recordinghelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/registrationservices/registrationservices.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/require/requirecss.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/require/requiretext.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/resize-observer-polyfill/ResizeObserver.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/router.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sanitizefilename.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/scroller/smoothscroller.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/scrollhelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/scrollstyles.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/search/searchfields.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/search/searchfields.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/search/searchfields.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/search/searchresults.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/search/searchresults.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/serverrestartdialog/serverrestartdialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/serviceworker/notifications.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/serviceworker/sync.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sessionplayer.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/shell.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/shortcuts.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/skinmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/slideshow/slideshow.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/slideshow/style.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sortmenu/sortmenu.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sortmenu/sortmenu.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/staticbackdrops.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ar.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/be-by.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/bg-bg.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ca.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/cs.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/da.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/de.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/el.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/en-gb.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/en-us.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/es-ar.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/es-mx.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/es.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/fi.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/fr-ca.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/fr.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/gsw.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/he.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/hr.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/hu.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/id.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/it.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/kk.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ko.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/lt-lt.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ms.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/nb.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/nl.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/pl.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/pt-br.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/pt-pt.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ro.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/ru.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/sk.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/sl-si.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/sv.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/tr.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/uk.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/vi.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/zh-cn.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/zh-hk.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/strings/zh-tw.json (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitlesettings/subtitleappearancehelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sync/emby-downloadbutton.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sync/sync.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sync/syncjobeditor.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/sync/syncjoblist.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/tabbedview/itemstab.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/tabbedview/tabbedview.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/thememediaplayer.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/appletv/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/blueradiance/bg.jpg (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/blueradiance/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/dark-classic/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/dark-green/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/dark-red/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/dark/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/halloween/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-blue/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-classic/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-green/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-pink/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-purple/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light-red/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/light/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/logodark.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/logowhite.png (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/themes/wmc/theme.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/toast/toast.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/toast/toast.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/touchhelper.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/upnextdialog/upnextdialog.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/upnextdialog/upnextdialog.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/userdatabuttons/emby-playstatebutton.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/userdatabuttons/emby-ratingbutton.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/usersettings/usersettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/usersettings/usersettingsbuilder.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.css (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/viewmanager/viewmanager.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/viewsettings/viewsettings.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/viewsettings/viewsettings.template.html (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/visibleinviewport.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/youtubeplayer/plugin.js (100%) rename {dashboard-ui => src}/bower_components/emby-webcomponents/youtubeplayer/style.css (100%) rename {dashboard-ui => src}/bower_components/fetch/fetch.js (100%) rename {dashboard-ui => src}/bower_components/hlsjs/dist/hls.min.js (100%) rename {dashboard-ui => src}/bower_components/hlsjs/hls.js.sublime-project (100%) rename {dashboard-ui => src}/bower_components/howlerjs/dist/howler.min.js (100%) rename {dashboard-ui => src}/bower_components/jquery/dist/jquery.slim.min.js (100%) rename {dashboard-ui => src}/bower_components/libjass/libjass.css (100%) rename {dashboard-ui => src}/bower_components/libjass/libjass.min.js (100%) rename {dashboard-ui => src}/bower_components/query-string/index.js (100%) rename {dashboard-ui => src}/bower_components/query-string/test.js (100%) rename {dashboard-ui => src}/bower_components/requirejs/require.js (100%) rename {dashboard-ui => src}/bower_components/webcomponentsjs/webcomponents-lite.min.js (100%) rename {dashboard-ui => src}/camerauploadsettings.html (100%) rename {dashboard-ui => src}/components/accessschedule/accessschedule.js (100%) rename {dashboard-ui => src}/components/accessschedule/accessschedule.template.html (100%) rename {dashboard-ui => src}/components/activitylog.js (100%) rename {dashboard-ui => src}/components/apphost.js (100%) rename {dashboard-ui => src}/components/categorysyncbuttons.js (100%) rename {dashboard-ui => src}/components/channelmapper/channelmapper.js (100%) rename {dashboard-ui => src}/components/directorybrowser/directorybrowser.css (100%) rename {dashboard-ui => src}/components/directorybrowser/directorybrowser.js (100%) rename {dashboard-ui => src}/components/favoriteitems.js (100%) rename {dashboard-ui => src}/components/filterdialog/filterdialog.js (100%) rename {dashboard-ui => src}/components/filterdialog/filterdialog.template.html (100%) rename {dashboard-ui => src}/components/filterdialog/style.css (100%) rename {dashboard-ui => src}/components/groupedcards.js (100%) rename {dashboard-ui => src}/components/guestinviter/guestinviter.js (100%) rename {dashboard-ui => src}/components/guestinviter/guestinviter.template.html (100%) rename {dashboard-ui => src}/components/humanedate.js (100%) rename {dashboard-ui => src}/components/iap.js (100%) rename {dashboard-ui => src}/components/imageoptionseditor/imageoptionseditor.js (100%) rename {dashboard-ui => src}/components/imageoptionseditor/imageoptionseditor.template.html (100%) rename {dashboard-ui => src}/components/libraryoptionseditor/libraryoptionseditor.js (100%) rename {dashboard-ui => src}/components/libraryoptionseditor/libraryoptionseditor.template.html (100%) rename {dashboard-ui => src}/components/medialibrarycreator/medialibrarycreator.js (100%) rename {dashboard-ui => src}/components/medialibrarycreator/medialibrarycreator.template.html (100%) rename {dashboard-ui => src}/components/medialibraryeditor/medialibraryeditor.js (100%) rename {dashboard-ui => src}/components/medialibraryeditor/medialibraryeditor.template.html (100%) rename {dashboard-ui => src}/components/navdrawer/navdrawer.css (100%) rename {dashboard-ui => src}/components/navdrawer/navdrawer.js (100%) rename {dashboard-ui => src}/components/remotecontrol.js (100%) rename {dashboard-ui => src}/components/tunerpicker.js (100%) rename {dashboard-ui => src}/components/tvproviders/schedulesdirect.js (100%) rename {dashboard-ui => src}/components/tvproviders/schedulesdirect.template.html (100%) rename {dashboard-ui => src}/components/tvproviders/xmltv.js (100%) rename {dashboard-ui => src}/components/tvproviders/xmltv.template.html (100%) rename {dashboard-ui => src}/components/viewcontainer-lite.js (100%) rename {dashboard-ui => src}/css/dashboard.css (100%) rename {dashboard-ui => src}/css/detailtable.css (100%) rename {dashboard-ui => src}/css/images/ani_equalizer_white.gif (100%) rename {dashboard-ui => src}/css/images/logindefault.png (100%) rename {dashboard-ui => src}/css/images/logoblack.png (100%) rename {dashboard-ui => src}/css/librarybrowser.css (100%) rename {dashboard-ui => src}/css/livetv.css (100%) rename {dashboard-ui => src}/css/metadataeditor.css (100%) rename {dashboard-ui => src}/css/nowplaying.css (100%) rename {dashboard-ui => src}/css/site.css (100%) rename {dashboard-ui => src}/css/videoosd.css (100%) rename {dashboard-ui => src}/dashboard.html (100%) rename {dashboard-ui => src}/dashboard/aboutpage.js (100%) rename {dashboard-ui => src}/dashboard/dashboardgeneral.js (100%) rename {dashboard-ui => src}/dashboard/dashboardhosting.js (100%) rename {dashboard-ui => src}/dashboard/devicesupload.js (100%) rename {dashboard-ui => src}/dashboard/librarydisplay.js (100%) rename {dashboard-ui => src}/dashboard/librarysettings.js (100%) rename {dashboard-ui => src}/dashboard/livetvtuner.js (100%) rename {dashboard-ui => src}/dashboard/logpage.js (100%) rename {dashboard-ui => src}/dashboard/serveractivity.js (100%) rename {dashboard-ui => src}/dashboard/wizardfinishpage.js (100%) rename {dashboard-ui => src}/dashboard/wizardremoteaccess.js (100%) rename {dashboard-ui => src}/dashboard/wizardsettings.js (100%) rename {dashboard-ui => src}/dashboard/wizardstart.js (100%) rename {dashboard-ui => src}/dashboardgeneral.html (100%) rename {dashboard-ui => src}/dashboardhosting.html (100%) rename {dashboard-ui => src}/devices/device.html (100%) rename {dashboard-ui => src}/devices/device.js (100%) rename {dashboard-ui => src}/devices/devices.html (100%) rename {dashboard-ui => src}/devices/devices.js (100%) rename {dashboard-ui => src}/devices/ios/ios.css (100%) rename {dashboard-ui => src}/devicesupload.html (100%) rename {dashboard-ui => src}/dlnaprofile.html (100%) rename {dashboard-ui => src}/dlnaprofiles.html (100%) rename {dashboard-ui => src}/dlnasettings.html (100%) rename {dashboard-ui => src}/edititemmetadata.html (100%) rename {dashboard-ui => src}/encodingsettings.html (100%) rename {dashboard-ui => src}/favicon.ico (100%) rename {dashboard-ui => src}/forgotpassword.html (100%) rename {dashboard-ui => src}/forgotpasswordpin.html (100%) rename {dashboard-ui => src}/home.html (100%) rename {dashboard-ui => src}/home/favorites.js (100%) rename {dashboard-ui => src}/home/home.js (100%) rename {dashboard-ui => src}/home/hometab.js (100%) rename {dashboard-ui => src}/index.html (100%) rename {dashboard-ui => src}/itemdetails.html (100%) rename {dashboard-ui => src}/legacy/buttonenabled.js (100%) rename {dashboard-ui => src}/legacy/dashboard.js (100%) rename {dashboard-ui => src}/legacy/fnchecked.js (100%) rename {dashboard-ui => src}/legacy/selectmenu.js (100%) rename {dashboard-ui => src}/library.html (100%) rename {dashboard-ui => src}/librarydisplay.html (100%) rename {dashboard-ui => src}/librarysettings.html (100%) rename {dashboard-ui => src}/list/list.html (100%) rename {dashboard-ui => src}/list/list.js (100%) rename {dashboard-ui => src}/livetv.html (100%) rename {dashboard-ui => src}/livetvguideprovider.html (100%) rename {dashboard-ui => src}/livetvsettings.html (100%) rename {dashboard-ui => src}/livetvstatus.html (100%) rename {dashboard-ui => src}/livetvtuner.html (100%) rename {dashboard-ui => src}/log.html (100%) rename {dashboard-ui => src}/login.html (100%) rename {dashboard-ui => src}/managedownloads.html (100%) rename {dashboard-ui => src}/manifest.json (100%) rename {dashboard-ui => src}/metadataimages.html (100%) rename {dashboard-ui => src}/metadatanfo.html (100%) rename {dashboard-ui => src}/movies.html (100%) rename {dashboard-ui => src}/music.html (100%) rename {dashboard-ui => src}/mypreferencesdisplay.html (100%) rename {dashboard-ui => src}/mypreferenceshome.html (100%) rename {dashboard-ui => src}/mypreferenceslanguages.html (100%) rename {dashboard-ui => src}/mypreferencesmenu.html (100%) rename {dashboard-ui => src}/mypreferencessubtitles.html (100%) rename {dashboard-ui => src}/myprofile.html (100%) rename {dashboard-ui => src}/mysync.html (100%) rename {dashboard-ui => src}/mysyncjob.html (100%) rename {dashboard-ui => src}/mysyncsettings.html (100%) rename {dashboard-ui => src}/notificationsetting.html (100%) rename {dashboard-ui => src}/notificationsettings.html (100%) rename {dashboard-ui => src}/nowplaying.html (100%) rename {dashboard-ui => src}/playbackconfiguration.html (100%) rename {dashboard-ui => src}/plugincatalog.html (100%) rename {dashboard-ui => src}/plugins.html (100%) rename {dashboard-ui => src}/robots.txt (100%) rename {dashboard-ui => src}/scheduledtask.html (100%) rename {dashboard-ui => src}/scheduledtasks.html (100%) rename {dashboard-ui => src}/scripts/addpluginpage.js (100%) rename {dashboard-ui => src}/scripts/apploader.js (100%) rename {dashboard-ui => src}/scripts/appservices.js (100%) rename {dashboard-ui => src}/scripts/autobackdrops.js (100%) rename {dashboard-ui => src}/scripts/camerauploadsettings.js (100%) rename {dashboard-ui => src}/scripts/connectlogin.js (100%) rename {dashboard-ui => src}/scripts/dashboardpage.js (100%) rename {dashboard-ui => src}/scripts/dlnaprofile.js (100%) rename {dashboard-ui => src}/scripts/dlnaprofiles.js (100%) rename {dashboard-ui => src}/scripts/dlnasettings.js (100%) rename {dashboard-ui => src}/scripts/edititemmetadata.js (100%) rename {dashboard-ui => src}/scripts/editorsidebar.js (100%) rename {dashboard-ui => src}/scripts/encodingsettings.js (100%) rename {dashboard-ui => src}/scripts/episodes.js (100%) rename {dashboard-ui => src}/scripts/forgotpassword.js (100%) rename {dashboard-ui => src}/scripts/forgotpasswordpin.js (100%) rename {dashboard-ui => src}/scripts/itembynamedetailpage.js (100%) rename {dashboard-ui => src}/scripts/itemdetailpage.js (100%) rename {dashboard-ui => src}/scripts/librarybrowser.js (100%) rename {dashboard-ui => src}/scripts/librarymenu.js (100%) rename {dashboard-ui => src}/scripts/livetvchannels.js (100%) rename {dashboard-ui => src}/scripts/livetvcomponents.js (100%) rename {dashboard-ui => src}/scripts/livetvguide.js (100%) rename {dashboard-ui => src}/scripts/livetvguideprovider.js (100%) rename {dashboard-ui => src}/scripts/livetvrecordings.js (100%) rename {dashboard-ui => src}/scripts/livetvschedule.js (100%) rename {dashboard-ui => src}/scripts/livetvseriestimers.js (100%) rename {dashboard-ui => src}/scripts/livetvsettings.js (100%) rename {dashboard-ui => src}/scripts/livetvstatus.js (100%) rename {dashboard-ui => src}/scripts/livetvsuggested.js (100%) rename {dashboard-ui => src}/scripts/loginpage.js (100%) rename {dashboard-ui => src}/scripts/managedownloads.js (100%) rename {dashboard-ui => src}/scripts/medialibrarypage.js (100%) rename {dashboard-ui => src}/scripts/metadataimagespage.js (100%) rename {dashboard-ui => src}/scripts/metadatanfo.js (100%) rename {dashboard-ui => src}/scripts/moviecollections.js (100%) rename {dashboard-ui => src}/scripts/moviegenres.js (100%) rename {dashboard-ui => src}/scripts/movies.js (100%) rename {dashboard-ui => src}/scripts/moviesrecommended.js (100%) rename {dashboard-ui => src}/scripts/movietrailers.js (100%) rename {dashboard-ui => src}/scripts/musicalbums.js (100%) rename {dashboard-ui => src}/scripts/musicartists.js (100%) rename {dashboard-ui => src}/scripts/musicgenres.js (100%) rename {dashboard-ui => src}/scripts/musicplaylists.js (100%) rename {dashboard-ui => src}/scripts/musicrecommended.js (100%) rename {dashboard-ui => src}/scripts/mypreferencescommon.js (100%) rename {dashboard-ui => src}/scripts/mypreferencesdisplay.js (100%) rename {dashboard-ui => src}/scripts/mypreferenceshome.js (100%) rename {dashboard-ui => src}/scripts/mypreferenceslanguages.js (100%) rename {dashboard-ui => src}/scripts/mypreferencessubtitles.js (100%) rename {dashboard-ui => src}/scripts/myprofile.js (100%) rename {dashboard-ui => src}/scripts/mysync.js (100%) rename {dashboard-ui => src}/scripts/mysyncsettings.js (100%) rename {dashboard-ui => src}/scripts/notificationsetting.js (100%) rename {dashboard-ui => src}/scripts/notificationsettings.js (100%) rename {dashboard-ui => src}/scripts/nowplayingpage.js (100%) rename {dashboard-ui => src}/scripts/playbackconfiguration.js (100%) rename {dashboard-ui => src}/scripts/playlistedit.js (100%) rename {dashboard-ui => src}/scripts/playlists.js (100%) rename {dashboard-ui => src}/scripts/plugincatalogpage.js (100%) rename {dashboard-ui => src}/scripts/pluginspage.js (100%) rename {dashboard-ui => src}/scripts/scheduledtaskpage.js (100%) rename {dashboard-ui => src}/scripts/scheduledtaskspage.js (100%) rename {dashboard-ui => src}/scripts/searchpage.js (100%) rename {dashboard-ui => src}/scripts/searchtab.js (100%) rename {dashboard-ui => src}/scripts/selectserver.js (100%) rename {dashboard-ui => src}/scripts/serversecurity.js (100%) rename {dashboard-ui => src}/scripts/site.js (100%) rename {dashboard-ui => src}/scripts/songs.js (100%) rename {dashboard-ui => src}/scripts/streamingsettings.js (100%) rename {dashboard-ui => src}/scripts/syncactivity.js (100%) rename {dashboard-ui => src}/scripts/syncsettings.js (100%) rename {dashboard-ui => src}/scripts/taskbutton.js (100%) rename {dashboard-ui => src}/scripts/themeloader.js (100%) rename {dashboard-ui => src}/scripts/tvgenres.js (100%) rename {dashboard-ui => src}/scripts/tvlatest.js (100%) rename {dashboard-ui => src}/scripts/tvrecommended.js (100%) rename {dashboard-ui => src}/scripts/tvshows.js (100%) rename {dashboard-ui => src}/scripts/tvstudios.js (100%) rename {dashboard-ui => src}/scripts/tvupcoming.js (100%) rename {dashboard-ui => src}/scripts/useredit.js (100%) rename {dashboard-ui => src}/scripts/userlibraryaccess.js (100%) rename {dashboard-ui => src}/scripts/usernew.js (100%) rename {dashboard-ui => src}/scripts/userparentalcontrol.js (100%) rename {dashboard-ui => src}/scripts/userpassword.js (100%) rename {dashboard-ui => src}/scripts/userpasswordpage.js (100%) rename {dashboard-ui => src}/scripts/userprofilespage.js (100%) rename {dashboard-ui => src}/scripts/videoosd.js (100%) rename {dashboard-ui => src}/scripts/wizardagreement.js (100%) rename {dashboard-ui => src}/scripts/wizarduserpage.js (100%) rename {dashboard-ui => src}/search.html (100%) rename {dashboard-ui => src}/selectserver.html (100%) rename {dashboard-ui => src}/serveractivity.html (100%) rename {dashboard-ui => src}/serversecurity.html (100%) rename {dashboard-ui => src}/serviceworker.js (100%) rename {dashboard-ui => src}/streamingsettings.html (100%) rename {dashboard-ui => src}/strings/ar.json (100%) rename {dashboard-ui => src}/strings/be-BY.json (100%) rename {dashboard-ui => src}/strings/bg-BG.json (100%) rename {dashboard-ui => src}/strings/ca.json (100%) rename {dashboard-ui => src}/strings/cs.json (100%) rename {dashboard-ui => src}/strings/da.json (100%) rename {dashboard-ui => src}/strings/de.json (100%) rename {dashboard-ui => src}/strings/el.json (100%) rename {dashboard-ui => src}/strings/en-GB.json (100%) rename {dashboard-ui => src}/strings/en-US.json (100%) rename {dashboard-ui => src}/strings/es-AR.json (100%) rename {dashboard-ui => src}/strings/es-MX.json (100%) rename {dashboard-ui => src}/strings/es.json (100%) rename {dashboard-ui => src}/strings/fa.json (100%) rename {dashboard-ui => src}/strings/fi.json (100%) rename {dashboard-ui => src}/strings/fr-CA.json (100%) rename {dashboard-ui => src}/strings/fr.json (100%) rename {dashboard-ui => src}/strings/gsw.json (100%) rename {dashboard-ui => src}/strings/he.json (100%) rename {dashboard-ui => src}/strings/hi-IN.json (100%) rename {dashboard-ui => src}/strings/hr.json (100%) rename {dashboard-ui => src}/strings/hu.json (100%) rename {dashboard-ui => src}/strings/id.json (100%) rename {dashboard-ui => src}/strings/is-IS.json (100%) rename {dashboard-ui => src}/strings/it.json (100%) rename {dashboard-ui => src}/strings/kk.json (100%) rename {dashboard-ui => src}/strings/ko.json (100%) rename {dashboard-ui => src}/strings/lt-LT.json (100%) rename {dashboard-ui => src}/strings/ms.json (100%) rename {dashboard-ui => src}/strings/nb.json (100%) rename {dashboard-ui => src}/strings/nl.json (100%) rename {dashboard-ui => src}/strings/no.json (100%) rename {dashboard-ui => src}/strings/pl.json (100%) rename {dashboard-ui => src}/strings/pt-BR.json (100%) rename {dashboard-ui => src}/strings/pt-PT.json (100%) rename {dashboard-ui => src}/strings/ro.json (100%) rename {dashboard-ui => src}/strings/ru.json (100%) rename {dashboard-ui => src}/strings/sk.json (100%) rename {dashboard-ui => src}/strings/sl-SI.json (100%) rename {dashboard-ui => src}/strings/sv.json (100%) rename {dashboard-ui => src}/strings/tr.json (100%) rename {dashboard-ui => src}/strings/uk.json (100%) rename {dashboard-ui => src}/strings/vi.json (100%) rename {dashboard-ui => src}/strings/zh-CN.json (100%) rename {dashboard-ui => src}/strings/zh-HK.json (100%) rename {dashboard-ui => src}/strings/zh-TW.json (100%) rename {dashboard-ui => src}/syncactivity.html (100%) rename {dashboard-ui => src}/syncsettings.html (100%) rename {dashboard-ui => src}/thirdparty/jstree/jstree.js (100%) rename {dashboard-ui => src}/thirdparty/jstree/themes/default/32px.png (100%) rename {dashboard-ui => src}/thirdparty/jstree/themes/default/style.css (100%) rename {dashboard-ui => src}/thirdparty/jstree/themes/default/throbber.gif (100%) rename {dashboard-ui => src}/touchicon.png (100%) rename {dashboard-ui => src}/touchicon114.png (100%) rename {dashboard-ui => src}/touchicon144.png (100%) rename {dashboard-ui => src}/touchicon72.png (100%) rename {dashboard-ui => src}/tv.html (100%) rename {dashboard-ui => src}/useredit.html (100%) rename {dashboard-ui => src}/userlibraryaccess.html (100%) rename {dashboard-ui => src}/usernew.html (100%) rename {dashboard-ui => src}/userparentalcontrol.html (100%) rename {dashboard-ui => src}/userpassword.html (100%) rename {dashboard-ui => src}/userprofiles.html (100%) rename {dashboard-ui => src}/videoosd.html (100%) rename {dashboard-ui => src}/wizardfinish.html (100%) rename {dashboard-ui => src}/wizardlibrary.html (100%) rename {dashboard-ui => src}/wizardremoteaccess.html (100%) rename {dashboard-ui => src}/wizardsettings.html (100%) rename {dashboard-ui => src}/wizardstart.html (100%) rename {dashboard-ui => src}/wizarduser.html (100%) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md new file mode 100644 index 0000000000..80c1723091 --- /dev/null +++ b/CONTRIBUTORS.md @@ -0,0 +1,76 @@ +# Jellyfin Contributors + + - [JoshuaBoniface](https://github.com/joshuaboniface) + - [nvllsvm](https://github.com/nvllsvm) + - [JustAMan](https://github.com/JustAMan) + - [dcrdev](https://github.com/dcrdev) + - [EraYaN](https://github.com/EraYaN) + - [flemse](https://github.com/flemse) + - [bfayers](https://github.com/bfayers) + - [Bond_009](https://github.com/Bond-009) + - [AnthonyLavado](https://github.com/anthonylavado) + - [sparky8251](https://github.com/sparky8251) + - [LeoVerto](https://github.com/LeoVerto) + +# Emby Contributors + + - [LukePulverenti](https://github.com/LukePulverenti) + - [ebr11](https://github.com/ebr11) + - [lalmanzar](https://github.com/lalmanzar) + - [schneifu](https://github.com/schneifu) + - [Mark2xv](https://github.com/Mark2xv) + - [ScottRapsey](https://github.com/ScottRapsey) + - [skynet600](https://github.com/skynet600) + - [Cheesegeezer](https://githum.com/Cheesegeezer) + - [Radeon](https://github.com/radeonorama) + - [gcw07](https://github.com/gcw07) + - [SivaramAdhiappan](https://github.com/shivaram1190) + - [CWatkinsNash](https://github.com/CWatkinsNash) + - [sfnetwork](https://github.com/sfnetwork) + - [Logos302](https://github.com/Logos302) + - [TheWorkz](https://github.com/TheWorkz) + - [mboehler](https://github.com/mboehler) + - [KaHooli](https://github.com/KaHooli) + - [xzener](https://github.com/xzener) + - [CBers](https://github.com/CBers) + - [Sagaia](https://github.com/Sagaia) + - [JHawk111](https://github.com/JHawk111) + - [David3663](https://github.com/david3663) + - [Smyken](https://github.com/Smyken) + - [doron1](https://github.com/doron1) + - [brainfryd](https://github.com/brainfryd) + - [DGMayor](http://github.com/DGMayor) + - [Jon-theHTPC](https://github.com/Jon-theHTPC) + - [aspdend](https://github.com/aspdend) + - [RedshirtMB](https://github.com/RedshirtMB) + - [thealienamongus](https://github.com/thealienamongus) + - [brocass](https://github.com/brocass) + - [pjrollo2000](https://github.com/pjrollo2000) + - [abobader](https://github.com/abobader) + - [milli260876](https://github.com/milli260876) + - [vileboy](https://github.com/vileboy) + - [starkadius](https://github.com/starkadius) + - [wraslor](https://github.com/wraslor) + - [mrwebsmith](https://github.com/mrwebsmith) + - [rickster53](https://github.com/rickster53) + - [Tharnax](https://github.com/Tharnax) + - [0sm0](https://github.com/0sm0) + - [swhitmore](https://github.com/swhitmore) + - [DigiTM](https://github.com/DigiTM) + - [crisliv / xliv](https://github.com/crisliv) + - [Yogi](https://github.com/yogi12) + - [madFloyd](https://github.com/madFloyd) + - [yardameus](https://github.com/yardameus) + - [rrb008](https://github.com/rrb008) + - [Toonguy](https://github.com/Toonguy) + - [Alwin Hummels](https://github.com/AlwinHummels) + - [trooper11](https://github.com/trooper11) + - [danlotfy](https://github.com/danlotfy) + - [jordy1955](https://github.com/jordy1955) + - [JoshFink](https://github.com/JoshFink) + - [Detector1](https://github.com/Detector1) + - [BlackIce013](https://github.com/blackice013) + - [mporcas](https://github.com/mporcas) + - [tikuf](https://github.com/tikuf/) + - [Tim Hobbs](https://github.com/timhobbs) + - [SvenVandenbrande](https://github.com/SvenVandenbrande) diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000..4522ba0659 --- /dev/null +++ b/LICENSE @@ -0,0 +1,339 @@ +GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {{description}} + Copyright (C) {{year}} {{fullname}} + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + {signature of Ty Coon}, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/README.md b/README.md new file mode 100644 index 0000000000..3da01d7360 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +

Jellyfin Web UI

+

The Free Software Media System

+ +

+Jellyfin is a free software media system that puts you in control of managing and streaming your media. +

+ diff --git a/dashboard-ui/addplugin.html b/src/addplugin.html similarity index 100% rename from dashboard-ui/addplugin.html rename to src/addplugin.html diff --git a/dashboard-ui/appservices.html b/src/appservices.html similarity index 100% rename from dashboard-ui/appservices.html rename to src/appservices.html diff --git a/dashboard-ui/bower_components/Sortable/Sortable.html b/src/bower_components/Sortable/Sortable.html similarity index 100% rename from dashboard-ui/bower_components/Sortable/Sortable.html rename to src/bower_components/Sortable/Sortable.html diff --git a/dashboard-ui/bower_components/Sortable/Sortable.min.js b/src/bower_components/Sortable/Sortable.min.js similarity index 100% rename from dashboard-ui/bower_components/Sortable/Sortable.min.js rename to src/bower_components/Sortable/Sortable.min.js diff --git a/dashboard-ui/bower_components/Sortable/index.html b/src/bower_components/Sortable/index.html similarity index 100% rename from dashboard-ui/bower_components/Sortable/index.html rename to src/bower_components/Sortable/index.html diff --git a/dashboard-ui/bower_components/Sortable/jquery.binding.js b/src/bower_components/Sortable/jquery.binding.js similarity index 100% rename from dashboard-ui/bower_components/Sortable/jquery.binding.js rename to src/bower_components/Sortable/jquery.binding.js diff --git a/dashboard-ui/bower_components/Sortable/knockout-sortable.js b/src/bower_components/Sortable/knockout-sortable.js similarity index 100% rename from dashboard-ui/bower_components/Sortable/knockout-sortable.js rename to src/bower_components/Sortable/knockout-sortable.js diff --git a/dashboard-ui/bower_components/Sortable/ng-sortable.js b/src/bower_components/Sortable/ng-sortable.js similarity index 100% rename from dashboard-ui/bower_components/Sortable/ng-sortable.js rename to src/bower_components/Sortable/ng-sortable.js diff --git a/dashboard-ui/bower_components/Sortable/react-sortable-mixin.js b/src/bower_components/Sortable/react-sortable-mixin.js similarity index 100% rename from dashboard-ui/bower_components/Sortable/react-sortable-mixin.js rename to src/bower_components/Sortable/react-sortable-mixin.js diff --git a/dashboard-ui/bower_components/Swiper/dist/css/swiper.min.css b/src/bower_components/Swiper/dist/css/swiper.min.css similarity index 100% rename from dashboard-ui/bower_components/Swiper/dist/css/swiper.min.css rename to src/bower_components/Swiper/dist/css/swiper.min.css diff --git a/dashboard-ui/bower_components/Swiper/dist/js/swiper.min.js b/src/bower_components/Swiper/dist/js/swiper.min.js similarity index 100% rename from dashboard-ui/bower_components/Swiper/dist/js/swiper.min.js rename to src/bower_components/Swiper/dist/js/swiper.min.js diff --git a/dashboard-ui/bower_components/Swiper/package.js b/src/bower_components/Swiper/package.js similarity index 100% rename from dashboard-ui/bower_components/Swiper/package.js rename to src/bower_components/Swiper/package.js diff --git a/dashboard-ui/bower_components/alameda/alameda.js b/src/bower_components/alameda/alameda.js similarity index 100% rename from dashboard-ui/bower_components/alameda/alameda.js rename to src/bower_components/alameda/alameda.js diff --git a/dashboard-ui/bower_components/document-register-element/basic.html b/src/bower_components/document-register-element/basic.html similarity index 100% rename from dashboard-ui/bower_components/document-register-element/basic.html rename to src/bower_components/document-register-element/basic.html diff --git a/dashboard-ui/bower_components/document-register-element/build/document-register-element.js b/src/bower_components/document-register-element/build/document-register-element.js similarity index 100% rename from dashboard-ui/bower_components/document-register-element/build/document-register-element.js rename to src/bower_components/document-register-element/build/document-register-element.js diff --git a/dashboard-ui/bower_components/emby-apiclient/apiclient.js b/src/bower_components/emby-apiclient/apiclient.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/apiclient.js rename to src/bower_components/emby-apiclient/apiclient.js diff --git a/dashboard-ui/bower_components/emby-apiclient/apiclientex.js b/src/bower_components/emby-apiclient/apiclientex.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/apiclientex.js rename to src/bower_components/emby-apiclient/apiclientex.js diff --git a/dashboard-ui/bower_components/emby-apiclient/appstorage-cache.js b/src/bower_components/emby-apiclient/appstorage-cache.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/appstorage-cache.js rename to src/bower_components/emby-apiclient/appstorage-cache.js diff --git a/dashboard-ui/bower_components/emby-apiclient/appstorage-localstorage.js b/src/bower_components/emby-apiclient/appstorage-localstorage.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/appstorage-localstorage.js rename to src/bower_components/emby-apiclient/appstorage-localstorage.js diff --git a/dashboard-ui/bower_components/emby-apiclient/appstorage-memory.js b/src/bower_components/emby-apiclient/appstorage-memory.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/appstorage-memory.js rename to src/bower_components/emby-apiclient/appstorage-memory.js diff --git a/dashboard-ui/bower_components/emby-apiclient/cameraroll.js b/src/bower_components/emby-apiclient/cameraroll.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/cameraroll.js rename to src/bower_components/emby-apiclient/cameraroll.js diff --git a/dashboard-ui/bower_components/emby-apiclient/connectionmanager.js b/src/bower_components/emby-apiclient/connectionmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/connectionmanager.js rename to src/bower_components/emby-apiclient/connectionmanager.js diff --git a/dashboard-ui/bower_components/emby-apiclient/credentials.js b/src/bower_components/emby-apiclient/credentials.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/credentials.js rename to src/bower_components/emby-apiclient/credentials.js diff --git a/dashboard-ui/bower_components/emby-apiclient/events.js b/src/bower_components/emby-apiclient/events.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/events.js rename to src/bower_components/emby-apiclient/events.js diff --git a/dashboard-ui/bower_components/emby-apiclient/fileupload.js b/src/bower_components/emby-apiclient/fileupload.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/fileupload.js rename to src/bower_components/emby-apiclient/fileupload.js diff --git a/dashboard-ui/bower_components/emby-apiclient/localassetmanager.js b/src/bower_components/emby-apiclient/localassetmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/localassetmanager.js rename to src/bower_components/emby-apiclient/localassetmanager.js diff --git a/dashboard-ui/bower_components/emby-apiclient/serverdiscovery.js b/src/bower_components/emby-apiclient/serverdiscovery.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/serverdiscovery.js rename to src/bower_components/emby-apiclient/serverdiscovery.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/contentuploader.js b/src/bower_components/emby-apiclient/sync/contentuploader.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/contentuploader.js rename to src/bower_components/emby-apiclient/sync/contentuploader.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/filerepository.js b/src/bower_components/emby-apiclient/sync/filerepository.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/filerepository.js rename to src/bower_components/emby-apiclient/sync/filerepository.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/itemrepository.js b/src/bower_components/emby-apiclient/sync/itemrepository.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/itemrepository.js rename to src/bower_components/emby-apiclient/sync/itemrepository.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/localsync.js b/src/bower_components/emby-apiclient/sync/localsync.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/localsync.js rename to src/bower_components/emby-apiclient/sync/localsync.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/mediasync.js b/src/bower_components/emby-apiclient/sync/mediasync.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/mediasync.js rename to src/bower_components/emby-apiclient/sync/mediasync.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/multiserversync.js b/src/bower_components/emby-apiclient/sync/multiserversync.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/multiserversync.js rename to src/bower_components/emby-apiclient/sync/multiserversync.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/serversync.js b/src/bower_components/emby-apiclient/sync/serversync.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/serversync.js rename to src/bower_components/emby-apiclient/sync/serversync.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/transfermanager.js b/src/bower_components/emby-apiclient/sync/transfermanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/transfermanager.js rename to src/bower_components/emby-apiclient/sync/transfermanager.js diff --git a/dashboard-ui/bower_components/emby-apiclient/sync/useractionrepository.js b/src/bower_components/emby-apiclient/sync/useractionrepository.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/sync/useractionrepository.js rename to src/bower_components/emby-apiclient/sync/useractionrepository.js diff --git a/dashboard-ui/bower_components/emby-apiclient/wakeonlan.js b/src/bower_components/emby-apiclient/wakeonlan.js similarity index 100% rename from dashboard-ui/bower_components/emby-apiclient/wakeonlan.js rename to src/bower_components/emby-apiclient/wakeonlan.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css b/src/bower_components/emby-webcomponents/actionsheet/actionsheet.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css rename to src/bower_components/emby-webcomponents/actionsheet/actionsheet.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.js b/src/bower_components/emby-webcomponents/actionsheet/actionsheet.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.js rename to src/bower_components/emby-webcomponents/actionsheet/actionsheet.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/alert/alert.js b/src/bower_components/emby-webcomponents/alert/alert.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/alert/alert.js rename to src/bower_components/emby-webcomponents/alert/alert.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/alert/nativealert.js b/src/bower_components/emby-webcomponents/alert/nativealert.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/alert/nativealert.js rename to src/bower_components/emby-webcomponents/alert/nativealert.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/alphanumericshortcuts/alphanumericshortcuts.js b/src/bower_components/emby-webcomponents/alphanumericshortcuts/alphanumericshortcuts.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/alphanumericshortcuts/alphanumericshortcuts.js rename to src/bower_components/emby-webcomponents/alphanumericshortcuts/alphanumericshortcuts.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/alphapicker/alphapicker.js b/src/bower_components/emby-webcomponents/alphapicker/alphapicker.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/alphapicker/alphapicker.js rename to src/bower_components/emby-webcomponents/alphapicker/alphapicker.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/alphapicker/style.css b/src/bower_components/emby-webcomponents/alphapicker/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/alphapicker/style.css rename to src/bower_components/emby-webcomponents/alphapicker/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/appfooter/appfooter.css b/src/bower_components/emby-webcomponents/appfooter/appfooter.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/appfooter/appfooter.css rename to src/bower_components/emby-webcomponents/appfooter/appfooter.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/appfooter/appfooter.js b/src/bower_components/emby-webcomponents/appfooter/appfooter.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/appfooter/appfooter.js rename to src/bower_components/emby-webcomponents/appfooter/appfooter.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/appsettings.js b/src/bower_components/emby-webcomponents/appsettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/appsettings.js rename to src/bower_components/emby-webcomponents/appsettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/backdrop/backdrop.js b/src/bower_components/emby-webcomponents/backdrop/backdrop.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/backdrop/backdrop.js rename to src/bower_components/emby-webcomponents/backdrop/backdrop.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/backdrop/style.css b/src/bower_components/emby-webcomponents/backdrop/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/backdrop/style.css rename to src/bower_components/emby-webcomponents/backdrop/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/browser.js b/src/bower_components/emby-webcomponents/browser.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/browser.js rename to src/bower_components/emby-webcomponents/browser.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js b/src/bower_components/emby-webcomponents/browserdeviceprofile.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js rename to src/bower_components/emby-webcomponents/browserdeviceprofile.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/cardbuilder/card.css b/src/bower_components/emby-webcomponents/cardbuilder/card.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/cardbuilder/card.css rename to src/bower_components/emby-webcomponents/cardbuilder/card.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/cardbuilder/cardbuilder.js b/src/bower_components/emby-webcomponents/cardbuilder/cardbuilder.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/cardbuilder/cardbuilder.js rename to src/bower_components/emby-webcomponents/cardbuilder/cardbuilder.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/cardbuilder/chaptercardbuilder.js b/src/bower_components/emby-webcomponents/cardbuilder/chaptercardbuilder.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/cardbuilder/chaptercardbuilder.js rename to src/bower_components/emby-webcomponents/cardbuilder/chaptercardbuilder.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/cardbuilder/peoplecardbuilder.js b/src/bower_components/emby-webcomponents/cardbuilder/peoplecardbuilder.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/cardbuilder/peoplecardbuilder.js rename to src/bower_components/emby-webcomponents/cardbuilder/peoplecardbuilder.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/cardbuilder/roundcard.css b/src/bower_components/emby-webcomponents/cardbuilder/roundcard.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/cardbuilder/roundcard.css rename to src/bower_components/emby-webcomponents/cardbuilder/roundcard.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/chromecast/chromecasthelpers.js b/src/bower_components/emby-webcomponents/chromecast/chromecasthelpers.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/chromecast/chromecasthelpers.js rename to src/bower_components/emby-webcomponents/chromecast/chromecasthelpers.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/chromecast/chromecastplayer.js b/src/bower_components/emby-webcomponents/chromecast/chromecastplayer.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/chromecast/chromecastplayer.js rename to src/bower_components/emby-webcomponents/chromecast/chromecastplayer.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/clearbutton.css b/src/bower_components/emby-webcomponents/clearbutton.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/clearbutton.css rename to src/bower_components/emby-webcomponents/clearbutton.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js b/src/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js rename to src/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js b/src/bower_components/emby-webcomponents/confirm/confirm.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js rename to src/bower_components/emby-webcomponents/confirm/confirm.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/confirm/nativeconfirm.js b/src/bower_components/emby-webcomponents/confirm/nativeconfirm.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/confirm/nativeconfirm.js rename to src/bower_components/emby-webcomponents/confirm/nativeconfirm.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/datetime.js b/src/bower_components/emby-webcomponents/datetime.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/datetime.js rename to src/bower_components/emby-webcomponents/datetime.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/deletehelper.js b/src/bower_components/emby-webcomponents/deletehelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/deletehelper.js rename to src/bower_components/emby-webcomponents/deletehelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js b/src/bower_components/emby-webcomponents/dialog/dialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js rename to src/bower_components/emby-webcomponents/dialog/dialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html b/src/bower_components/emby-webcomponents/dialog/dialog.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html rename to src/bower_components/emby-webcomponents/dialog/dialog.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css b/src/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css rename to src/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.js b/src/bower_components/emby-webcomponents/dialoghelper/dialoghelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.js rename to src/bower_components/emby-webcomponents/dialoghelper/dialoghelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/displaysettings/displaysettings.js b/src/bower_components/emby-webcomponents/displaysettings/displaysettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/displaysettings/displaysettings.js rename to src/bower_components/emby-webcomponents/displaysettings/displaysettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/displaysettings/displaysettings.template.html b/src/bower_components/emby-webcomponents/displaysettings/displaysettings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/displaysettings/displaysettings.template.html rename to src/bower_components/emby-webcomponents/displaysettings/displaysettings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/dom.js b/src/bower_components/emby-webcomponents/dom.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/dom.js rename to src/bower_components/emby-webcomponents/dom.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css b/src/bower_components/emby-webcomponents/emby-button/emby-button.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css rename to src/bower_components/emby-webcomponents/emby-button/emby-button.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.js b/src/bower_components/emby-webcomponents/emby-button/emby-button.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.js rename to src/bower_components/emby-webcomponents/emby-button/emby-button.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-button/paper-icon-button-light.js b/src/bower_components/emby-webcomponents/emby-button/paper-icon-button-light.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-button/paper-icon-button-light.js rename to src/bower_components/emby-webcomponents/emby-button/paper-icon-button-light.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.css b/src/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.css rename to src/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.js b/src/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.js rename to src/bower_components/emby-webcomponents/emby-checkbox/emby-checkbox.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-collapse/emby-collapse.css b/src/bower_components/emby-webcomponents/emby-collapse/emby-collapse.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-collapse/emby-collapse.css rename to src/bower_components/emby-webcomponents/emby-collapse/emby-collapse.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-collapse/emby-collapse.js b/src/bower_components/emby-webcomponents/emby-collapse/emby-collapse.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-collapse/emby-collapse.js rename to src/bower_components/emby-webcomponents/emby-collapse/emby-collapse.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-connect/connecthelper.js b/src/bower_components/emby-webcomponents/emby-connect/connecthelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-connect/connecthelper.js rename to src/bower_components/emby-webcomponents/emby-connect/connecthelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-input/emby-input.css b/src/bower_components/emby-webcomponents/emby-input/emby-input.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-input/emby-input.css rename to src/bower_components/emby-webcomponents/emby-input/emby-input.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-input/emby-input.js b/src/bower_components/emby-webcomponents/emby-input/emby-input.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-input/emby-input.js rename to src/bower_components/emby-webcomponents/emby-input/emby-input.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-itemrefreshindicator/emby-itemrefreshindicator.js b/src/bower_components/emby-webcomponents/emby-itemrefreshindicator/emby-itemrefreshindicator.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-itemrefreshindicator/emby-itemrefreshindicator.js rename to src/bower_components/emby-webcomponents/emby-itemrefreshindicator/emby-itemrefreshindicator.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-itemscontainer/emby-itemscontainer.js b/src/bower_components/emby-webcomponents/emby-itemscontainer/emby-itemscontainer.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-itemscontainer/emby-itemscontainer.js rename to src/bower_components/emby-webcomponents/emby-itemscontainer/emby-itemscontainer.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.css b/src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.css rename to src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.js b/src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.js rename to src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.template.html b/src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-progressring/emby-progressring.template.html rename to src/bower_components/emby-webcomponents/emby-progressring/emby-progressring.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-radio/emby-radio.css b/src/bower_components/emby-webcomponents/emby-radio/emby-radio.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-radio/emby-radio.css rename to src/bower_components/emby-webcomponents/emby-radio/emby-radio.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-radio/emby-radio.js b/src/bower_components/emby-webcomponents/emby-radio/emby-radio.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-radio/emby-radio.js rename to src/bower_components/emby-webcomponents/emby-radio/emby-radio.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.css b/src/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.css rename to src/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.js b/src/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.js rename to src/bower_components/emby-webcomponents/emby-scrollbuttons/emby-scrollbuttons.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-scroller/emby-scroller.js b/src/bower_components/emby-webcomponents/emby-scroller/emby-scroller.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-scroller/emby-scroller.js rename to src/bower_components/emby-webcomponents/emby-scroller/emby-scroller.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-select/emby-select.css b/src/bower_components/emby-webcomponents/emby-select/emby-select.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-select/emby-select.css rename to src/bower_components/emby-webcomponents/emby-select/emby-select.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-select/emby-select.js b/src/bower_components/emby-webcomponents/emby-select/emby-select.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-select/emby-select.js rename to src/bower_components/emby-webcomponents/emby-select/emby-select.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-slider/emby-slider.css b/src/bower_components/emby-webcomponents/emby-slider/emby-slider.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-slider/emby-slider.css rename to src/bower_components/emby-webcomponents/emby-slider/emby-slider.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-slider/emby-slider.js b/src/bower_components/emby-webcomponents/emby-slider/emby-slider.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-slider/emby-slider.js rename to src/bower_components/emby-webcomponents/emby-slider/emby-slider.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-tabs/emby-tabs.css b/src/bower_components/emby-webcomponents/emby-tabs/emby-tabs.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-tabs/emby-tabs.css rename to src/bower_components/emby-webcomponents/emby-tabs/emby-tabs.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-tabs/emby-tabs.js b/src/bower_components/emby-webcomponents/emby-tabs/emby-tabs.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-tabs/emby-tabs.js rename to src/bower_components/emby-webcomponents/emby-tabs/emby-tabs.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-textarea/emby-textarea.css b/src/bower_components/emby-webcomponents/emby-textarea/emby-textarea.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-textarea/emby-textarea.css rename to src/bower_components/emby-webcomponents/emby-textarea/emby-textarea.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-textarea/emby-textarea.js b/src/bower_components/emby-webcomponents/emby-textarea/emby-textarea.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-textarea/emby-textarea.js rename to src/bower_components/emby-webcomponents/emby-textarea/emby-textarea.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-toggle/emby-toggle.css b/src/bower_components/emby-webcomponents/emby-toggle/emby-toggle.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-toggle/emby-toggle.css rename to src/bower_components/emby-webcomponents/emby-toggle/emby-toggle.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-toggle/emby-toggle.js b/src/bower_components/emby-webcomponents/emby-toggle/emby-toggle.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/emby-toggle/emby-toggle.js rename to src/bower_components/emby-webcomponents/emby-toggle/emby-toggle.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/fetchhelper.js b/src/bower_components/emby-webcomponents/fetchhelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fetchhelper.js rename to src/bower_components/emby-webcomponents/fetchhelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/filedownloader.js b/src/bower_components/emby-webcomponents/filedownloader.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/filedownloader.js rename to src/bower_components/emby-webcomponents/filedownloader.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/filesystem.js b/src/bower_components/emby-webcomponents/filesystem.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/filesystem.js rename to src/bower_components/emby-webcomponents/filesystem.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/filtermenu/filtermenu.js b/src/bower_components/emby-webcomponents/filtermenu/filtermenu.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/filtermenu/filtermenu.js rename to src/bower_components/emby-webcomponents/filtermenu/filtermenu.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/filtermenu/filtermenu.template.html b/src/bower_components/emby-webcomponents/filtermenu/filtermenu.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/filtermenu/filtermenu.template.html rename to src/bower_components/emby-webcomponents/filtermenu/filtermenu.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/flexstyles.css b/src/bower_components/emby-webcomponents/flexstyles.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/flexstyles.css rename to src/bower_components/emby-webcomponents/flexstyles.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/flvjs/flv.min.js b/src/bower_components/emby-webcomponents/flvjs/flv.min.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/flvjs/flv.min.js rename to src/bower_components/emby-webcomponents/flvjs/flv.min.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/focusmanager.js b/src/bower_components/emby-webcomponents/focusmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/focusmanager.js rename to src/bower_components/emby-webcomponents/focusmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/fonts/fonts.css b/src/bower_components/emby-webcomponents/fonts/fonts.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fonts/fonts.css rename to src/bower_components/emby-webcomponents/fonts/fonts.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/fonts/fonts.sized.css b/src/bower_components/emby-webcomponents/fonts/fonts.sized.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fonts/fonts.sized.css rename to src/bower_components/emby-webcomponents/fonts/fonts.sized.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff b/src/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff rename to src/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff diff --git a/dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 b/src/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 rename to src/bower_components/emby-webcomponents/fonts/material-icons/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 diff --git a/dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/style.css b/src/bower_components/emby-webcomponents/fonts/material-icons/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fonts/material-icons/style.css rename to src/bower_components/emby-webcomponents/fonts/material-icons/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css b/src/bower_components/emby-webcomponents/formdialog.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/formdialog.css rename to src/bower_components/emby-webcomponents/formdialog.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/fullscreen/fullscreen-dc.js b/src/bower_components/emby-webcomponents/fullscreen/fullscreen-dc.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fullscreen/fullscreen-dc.js rename to src/bower_components/emby-webcomponents/fullscreen/fullscreen-dc.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/fullscreen/fullscreenmanager.js b/src/bower_components/emby-webcomponents/fullscreen/fullscreenmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/fullscreen/fullscreenmanager.js rename to src/bower_components/emby-webcomponents/fullscreen/fullscreenmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/globalize.js b/src/bower_components/emby-webcomponents/globalize.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/globalize.js rename to src/bower_components/emby-webcomponents/globalize.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/guide-settings.js b/src/bower_components/emby-webcomponents/guide/guide-settings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/guide-settings.js rename to src/bower_components/emby-webcomponents/guide/guide-settings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/guide-settings.template.html b/src/bower_components/emby-webcomponents/guide/guide-settings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/guide-settings.template.html rename to src/bower_components/emby-webcomponents/guide/guide-settings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/guide.css b/src/bower_components/emby-webcomponents/guide/guide.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/guide.css rename to src/bower_components/emby-webcomponents/guide/guide.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/guide.js b/src/bower_components/emby-webcomponents/guide/guide.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/guide.js rename to src/bower_components/emby-webcomponents/guide/guide.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/programs.css b/src/bower_components/emby-webcomponents/guide/programs.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/programs.css rename to src/bower_components/emby-webcomponents/guide/programs.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/guide/tvguide.template.html b/src/bower_components/emby-webcomponents/guide/tvguide.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/guide/tvguide.template.html rename to src/bower_components/emby-webcomponents/guide/tvguide.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/headroom/headroom.css b/src/bower_components/emby-webcomponents/headroom/headroom.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/headroom/headroom.css rename to src/bower_components/emby-webcomponents/headroom/headroom.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/headroom/headroom.js b/src/bower_components/emby-webcomponents/headroom/headroom.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/headroom/headroom.js rename to src/bower_components/emby-webcomponents/headroom/headroom.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettings.js b/src/bower_components/emby-webcomponents/homescreensettings/homescreensettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettings.js rename to src/bower_components/emby-webcomponents/homescreensettings/homescreensettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettings.template.html b/src/bower_components/emby-webcomponents/homescreensettings/homescreensettings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettings.template.html rename to src/bower_components/emby-webcomponents/homescreensettings/homescreensettings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.js b/src/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.js rename to src/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.template.html b/src/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.template.html rename to src/bower_components/emby-webcomponents/homescreensettings/homescreensettingsdialog.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/homesections/homesections.css b/src/bower_components/emby-webcomponents/homesections/homesections.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homesections/homesections.css rename to src/bower_components/emby-webcomponents/homesections/homesections.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/homesections/homesections.js b/src/bower_components/emby-webcomponents/homesections/homesections.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/homesections/homesections.js rename to src/bower_components/emby-webcomponents/homesections/homesections.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/htmlaudioplayer/plugin.js b/src/bower_components/emby-webcomponents/htmlaudioplayer/plugin.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/htmlaudioplayer/plugin.js rename to src/bower_components/emby-webcomponents/htmlaudioplayer/plugin.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/htmlmediahelper.js b/src/bower_components/emby-webcomponents/htmlvideoplayer/htmlmediahelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/htmlmediahelper.js rename to src/bower_components/emby-webcomponents/htmlvideoplayer/htmlmediahelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/plugin.js b/src/bower_components/emby-webcomponents/htmlvideoplayer/plugin.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/plugin.js rename to src/bower_components/emby-webcomponents/htmlvideoplayer/plugin.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/style.css b/src/bower_components/emby-webcomponents/htmlvideoplayer/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/htmlvideoplayer/style.css rename to src/bower_components/emby-webcomponents/htmlvideoplayer/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/imagedownloader/imagedownloader.js b/src/bower_components/emby-webcomponents/imagedownloader/imagedownloader.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imagedownloader/imagedownloader.js rename to src/bower_components/emby-webcomponents/imagedownloader/imagedownloader.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/imagedownloader/imagedownloader.template.html b/src/bower_components/emby-webcomponents/imagedownloader/imagedownloader.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imagedownloader/imagedownloader.template.html rename to src/bower_components/emby-webcomponents/imagedownloader/imagedownloader.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.css b/src/bower_components/emby-webcomponents/imageeditor/imageeditor.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.css rename to src/bower_components/emby-webcomponents/imageeditor/imageeditor.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js b/src/bower_components/emby-webcomponents/imageeditor/imageeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js rename to src/bower_components/emby-webcomponents/imageeditor/imageeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.template.html b/src/bower_components/emby-webcomponents/imageeditor/imageeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.template.html rename to src/bower_components/emby-webcomponents/imageeditor/imageeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/images/basicimagefetcher.js b/src/bower_components/emby-webcomponents/images/basicimagefetcher.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/images/basicimagefetcher.js rename to src/bower_components/emby-webcomponents/images/basicimagefetcher.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/images/imagehelper.js b/src/bower_components/emby-webcomponents/images/imagehelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/images/imagehelper.js rename to src/bower_components/emby-webcomponents/images/imagehelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/images/style.css b/src/bower_components/emby-webcomponents/images/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/images/style.css rename to src/bower_components/emby-webcomponents/images/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageuploader/imageuploader.js b/src/bower_components/emby-webcomponents/imageuploader/imageuploader.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageuploader/imageuploader.js rename to src/bower_components/emby-webcomponents/imageuploader/imageuploader.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageuploader/imageuploader.template.html b/src/bower_components/emby-webcomponents/imageuploader/imageuploader.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageuploader/imageuploader.template.html rename to src/bower_components/emby-webcomponents/imageuploader/imageuploader.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageuploader/style.css b/src/bower_components/emby-webcomponents/imageuploader/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/imageuploader/style.css rename to src/bower_components/emby-webcomponents/imageuploader/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css b/src/bower_components/emby-webcomponents/indicators/indicators.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css rename to src/bower_components/emby-webcomponents/indicators/indicators.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.js b/src/bower_components/emby-webcomponents/indicators/indicators.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.js rename to src/bower_components/emby-webcomponents/indicators/indicators.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/input/api.js b/src/bower_components/emby-webcomponents/input/api.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/input/api.js rename to src/bower_components/emby-webcomponents/input/api.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/input/gamepadtokey.js b/src/bower_components/emby-webcomponents/input/gamepadtokey.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/input/gamepadtokey.js rename to src/bower_components/emby-webcomponents/input/gamepadtokey.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/input/mouse.js b/src/bower_components/emby-webcomponents/input/mouse.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/input/mouse.js rename to src/bower_components/emby-webcomponents/input/mouse.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/inputmanager.js b/src/bower_components/emby-webcomponents/inputmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/inputmanager.js rename to src/bower_components/emby-webcomponents/inputmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js b/src/bower_components/emby-webcomponents/itemcontextmenu.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js rename to src/bower_components/emby-webcomponents/itemcontextmenu.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemhelper.js b/src/bower_components/emby-webcomponents/itemhelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/itemhelper.js rename to src/bower_components/emby-webcomponents/itemhelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.js b/src/bower_components/emby-webcomponents/itemidentifier/itemidentifier.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.js rename to src/bower_components/emby-webcomponents/itemidentifier/itemidentifier.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html b/src/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html rename to src/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemsrefresher.js b/src/bower_components/emby-webcomponents/itemsrefresher.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/itemsrefresher.js rename to src/bower_components/emby-webcomponents/itemsrefresher.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/layoutmanager.js b/src/bower_components/emby-webcomponents/layoutmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/layoutmanager.js rename to src/bower_components/emby-webcomponents/layoutmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyedgehack.css b/src/bower_components/emby-webcomponents/lazyloader/lazyedgehack.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyedgehack.css rename to src/bower_components/emby-webcomponents/lazyloader/lazyedgehack.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyloader-intersectionobserver.js b/src/bower_components/emby-webcomponents/lazyloader/lazyloader-intersectionobserver.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyloader-intersectionobserver.js rename to src/bower_components/emby-webcomponents/lazyloader/lazyloader-intersectionobserver.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyloader-scroll.js b/src/bower_components/emby-webcomponents/lazyloader/lazyloader-scroll.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/lazyloader/lazyloader-scroll.js rename to src/bower_components/emby-webcomponents/lazyloader/lazyloader-scroll.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.css b/src/bower_components/emby-webcomponents/listview/listview.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/listview/listview.css rename to src/bower_components/emby-webcomponents/listview/listview.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.js b/src/bower_components/emby-webcomponents/listview/listview.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/listview/listview.js rename to src/bower_components/emby-webcomponents/listview/listview.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loader2.gif b/src/bower_components/emby-webcomponents/loading/loader2.gif similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loading/loader2.gif rename to src/bower_components/emby-webcomponents/loading/loader2.gif diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.css b/src/bower_components/emby-webcomponents/loading/loading-legacy.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.css rename to src/bower_components/emby-webcomponents/loading/loading-legacy.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.js b/src/bower_components/emby-webcomponents/loading/loading-legacy.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.js rename to src/bower_components/emby-webcomponents/loading/loading-legacy.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-lite.css b/src/bower_components/emby-webcomponents/loading/loading-lite.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loading/loading-lite.css rename to src/bower_components/emby-webcomponents/loading/loading-lite.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-lite.js b/src/bower_components/emby-webcomponents/loading/loading-lite.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loading/loading-lite.js rename to src/bower_components/emby-webcomponents/loading/loading-lite.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/loadingdialog/loadingdialog.js b/src/bower_components/emby-webcomponents/loadingdialog/loadingdialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/loadingdialog/loadingdialog.js rename to src/bower_components/emby-webcomponents/loadingdialog/loadingdialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/maintabsmanager.js b/src/bower_components/emby-webcomponents/maintabsmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/maintabsmanager.js rename to src/bower_components/emby-webcomponents/maintabsmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/mediainfo/fresh.png b/src/bower_components/emby-webcomponents/mediainfo/fresh.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/mediainfo/fresh.png rename to src/bower_components/emby-webcomponents/mediainfo/fresh.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/mediainfo/mediainfo.css b/src/bower_components/emby-webcomponents/mediainfo/mediainfo.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/mediainfo/mediainfo.css rename to src/bower_components/emby-webcomponents/mediainfo/mediainfo.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/mediainfo/mediainfo.js b/src/bower_components/emby-webcomponents/mediainfo/mediainfo.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/mediainfo/mediainfo.js rename to src/bower_components/emby-webcomponents/mediainfo/mediainfo.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/mediainfo/rotten.png b/src/bower_components/emby-webcomponents/mediainfo/rotten.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/mediainfo/rotten.png rename to src/bower_components/emby-webcomponents/mediainfo/rotten.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js b/src/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js rename to src/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html b/src/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html rename to src/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.js b/src/bower_components/emby-webcomponents/metadataeditor/personeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.js rename to src/bower_components/emby-webcomponents/metadataeditor/personeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html b/src/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html rename to src/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/multidownload.js b/src/bower_components/emby-webcomponents/multidownload.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/multidownload.js rename to src/bower_components/emby-webcomponents/multidownload.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css b/src/bower_components/emby-webcomponents/multiselect/multiselect.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css rename to src/bower_components/emby-webcomponents/multiselect/multiselect.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js b/src/bower_components/emby-webcomponents/multiselect/multiselect.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js rename to src/bower_components/emby-webcomponents/multiselect/multiselect.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/native-promise-only/lib/npo.src.js b/src/bower_components/emby-webcomponents/native-promise-only/lib/npo.src.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/native-promise-only/lib/npo.src.js rename to src/bower_components/emby-webcomponents/native-promise-only/lib/npo.src.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/native-promise-only/test_adapter.js b/src/bower_components/emby-webcomponents/native-promise-only/test_adapter.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/native-promise-only/test_adapter.js rename to src/bower_components/emby-webcomponents/native-promise-only/test_adapter.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/notifications/badge.png b/src/bower_components/emby-webcomponents/notifications/badge.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/notifications/badge.png rename to src/bower_components/emby-webcomponents/notifications/badge.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/notifications/notificationicon.png b/src/bower_components/emby-webcomponents/notifications/notificationicon.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/notifications/notificationicon.png rename to src/bower_components/emby-webcomponents/notifications/notificationicon.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/notifications/notifications.js b/src/bower_components/emby-webcomponents/notifications/notifications.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/notifications/notifications.js rename to src/bower_components/emby-webcomponents/notifications/notifications.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.css b/src/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.css rename to src/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.js b/src/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.js rename to src/bower_components/emby-webcomponents/nowplayingbar/nowplayingbar.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/packagemanager.js b/src/bower_components/emby-webcomponents/packagemanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/packagemanager.js rename to src/bower_components/emby-webcomponents/packagemanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/pagejs/page.js b/src/bower_components/emby-webcomponents/pagejs/page.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/pagejs/page.js rename to src/bower_components/emby-webcomponents/pagejs/page.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/photoplayer/plugin.js b/src/bower_components/emby-webcomponents/photoplayer/plugin.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/photoplayer/plugin.js rename to src/bower_components/emby-webcomponents/photoplayer/plugin.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/autoplaydetect.js b/src/bower_components/emby-webcomponents/playback/autoplaydetect.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/autoplaydetect.js rename to src/bower_components/emby-webcomponents/playback/autoplaydetect.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/brightnessosd.js b/src/bower_components/emby-webcomponents/playback/brightnessosd.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/brightnessosd.js rename to src/bower_components/emby-webcomponents/playback/brightnessosd.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/experimentalwarnings.js b/src/bower_components/emby-webcomponents/playback/experimentalwarnings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/experimentalwarnings.js rename to src/bower_components/emby-webcomponents/playback/experimentalwarnings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/iconosd.css b/src/bower_components/emby-webcomponents/playback/iconosd.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/iconosd.css rename to src/bower_components/emby-webcomponents/playback/iconosd.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/mediasession.js b/src/bower_components/emby-webcomponents/playback/mediasession.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/mediasession.js rename to src/bower_components/emby-webcomponents/playback/mediasession.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/nowplayinghelper.js b/src/bower_components/emby-webcomponents/playback/nowplayinghelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/nowplayinghelper.js rename to src/bower_components/emby-webcomponents/playback/nowplayinghelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playaccessvalidation.js b/src/bower_components/emby-webcomponents/playback/playaccessvalidation.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playaccessvalidation.js rename to src/bower_components/emby-webcomponents/playback/playaccessvalidation.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playbackmanager.js b/src/bower_components/emby-webcomponents/playback/playbackmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playbackmanager.js rename to src/bower_components/emby-webcomponents/playback/playbackmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playbackorientation.js b/src/bower_components/emby-webcomponents/playback/playbackorientation.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playbackorientation.js rename to src/bower_components/emby-webcomponents/playback/playbackorientation.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playbackvalidation.js b/src/bower_components/emby-webcomponents/playback/playbackvalidation.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playbackvalidation.js rename to src/bower_components/emby-webcomponents/playback/playbackvalidation.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playerselection.js b/src/bower_components/emby-webcomponents/playback/playerselection.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playerselection.js rename to src/bower_components/emby-webcomponents/playback/playerselection.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playersettingsmenu.js b/src/bower_components/emby-webcomponents/playback/playersettingsmenu.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playersettingsmenu.js rename to src/bower_components/emby-webcomponents/playback/playersettingsmenu.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playmethodhelper.js b/src/bower_components/emby-webcomponents/playback/playmethodhelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playmethodhelper.js rename to src/bower_components/emby-webcomponents/playback/playmethodhelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/playqueuemanager.js b/src/bower_components/emby-webcomponents/playback/playqueuemanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/playqueuemanager.js rename to src/bower_components/emby-webcomponents/playback/playqueuemanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/remotecontrolautoplay.js b/src/bower_components/emby-webcomponents/playback/remotecontrolautoplay.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/remotecontrolautoplay.js rename to src/bower_components/emby-webcomponents/playback/remotecontrolautoplay.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playback/volumeosd.js b/src/bower_components/emby-webcomponents/playback/volumeosd.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playback/volumeosd.js rename to src/bower_components/emby-webcomponents/playback/volumeosd.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playbacksettings/playbacksettings.js b/src/bower_components/emby-webcomponents/playbacksettings/playbacksettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playbacksettings/playbacksettings.js rename to src/bower_components/emby-webcomponents/playbacksettings/playbacksettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playbacksettings/playbacksettings.template.html b/src/bower_components/emby-webcomponents/playbacksettings/playbacksettings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playbacksettings/playbacksettings.template.html rename to src/bower_components/emby-webcomponents/playbacksettings/playbacksettings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/playerstats/playerstats.css b/src/bower_components/emby-webcomponents/playerstats/playerstats.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playerstats/playerstats.css rename to src/bower_components/emby-webcomponents/playerstats/playerstats.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/playerstats/playerstats.js b/src/bower_components/emby-webcomponents/playerstats/playerstats.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playerstats/playerstats.js rename to src/bower_components/emby-webcomponents/playerstats/playerstats.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js b/src/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js rename to src/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/playmenu.js b/src/bower_components/emby-webcomponents/playmenu.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/playmenu.js rename to src/bower_components/emby-webcomponents/playmenu.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/pluginmanager.js b/src/bower_components/emby-webcomponents/pluginmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/pluginmanager.js rename to src/bower_components/emby-webcomponents/pluginmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/polyfills/array.js b/src/bower_components/emby-webcomponents/polyfills/array.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/polyfills/array.js rename to src/bower_components/emby-webcomponents/polyfills/array.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/polyfills/bind.js b/src/bower_components/emby-webcomponents/polyfills/bind.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/polyfills/bind.js rename to src/bower_components/emby-webcomponents/polyfills/bind.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/polyfills/objectassign.js b/src/bower_components/emby-webcomponents/polyfills/objectassign.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/polyfills/objectassign.js rename to src/bower_components/emby-webcomponents/polyfills/objectassign.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/polyfills/raf.js b/src/bower_components/emby-webcomponents/polyfills/raf.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/polyfills/raf.js rename to src/bower_components/emby-webcomponents/polyfills/raf.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/prompt/nativeprompt.js b/src/bower_components/emby-webcomponents/prompt/nativeprompt.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/prompt/nativeprompt.js rename to src/bower_components/emby-webcomponents/prompt/nativeprompt.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/prompt/prompt.js b/src/bower_components/emby-webcomponents/prompt/prompt.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/prompt/prompt.js rename to src/bower_components/emby-webcomponents/prompt/prompt.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/prompt/prompt.template.html b/src/bower_components/emby-webcomponents/prompt/prompt.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/prompt/prompt.template.html rename to src/bower_components/emby-webcomponents/prompt/prompt.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/qualityoptions.js b/src/bower_components/emby-webcomponents/qualityoptions.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/qualityoptions.js rename to src/bower_components/emby-webcomponents/qualityoptions.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/empty.png b/src/bower_components/emby-webcomponents/recordingcreator/empty.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/empty.png rename to src/bower_components/emby-webcomponents/recordingcreator/empty.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingbutton.js b/src/bower_components/emby-webcomponents/recordingcreator/recordingbutton.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingbutton.js rename to src/bower_components/emby-webcomponents/recordingcreator/recordingbutton.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.css b/src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.css rename to src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js b/src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js rename to src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html b/src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html rename to src/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js b/src/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js rename to src/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html b/src/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html rename to src/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.css b/src/bower_components/emby-webcomponents/recordingcreator/recordingfields.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.css rename to src/bower_components/emby-webcomponents/recordingcreator/recordingfields.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js b/src/bower_components/emby-webcomponents/recordingcreator/recordingfields.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js rename to src/bower_components/emby-webcomponents/recordingcreator/recordingfields.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html b/src/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html rename to src/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordinghelper.js b/src/bower_components/emby-webcomponents/recordingcreator/recordinghelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordinghelper.js rename to src/bower_components/emby-webcomponents/recordingcreator/recordinghelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.js b/src/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.js rename to src/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.template.html b/src/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.template.html rename to src/bower_components/emby-webcomponents/recordingcreator/seriesrecordingeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js b/src/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js rename to src/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/registrationservices/registrationservices.js b/src/bower_components/emby-webcomponents/registrationservices/registrationservices.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/registrationservices/registrationservices.js rename to src/bower_components/emby-webcomponents/registrationservices/registrationservices.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/require/requirecss.js b/src/bower_components/emby-webcomponents/require/requirecss.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/require/requirecss.js rename to src/bower_components/emby-webcomponents/require/requirecss.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/require/requiretext.js b/src/bower_components/emby-webcomponents/require/requiretext.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/require/requiretext.js rename to src/bower_components/emby-webcomponents/require/requiretext.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/resize-observer-polyfill/ResizeObserver.js b/src/bower_components/emby-webcomponents/resize-observer-polyfill/ResizeObserver.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/resize-observer-polyfill/ResizeObserver.js rename to src/bower_components/emby-webcomponents/resize-observer-polyfill/ResizeObserver.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/router.js b/src/bower_components/emby-webcomponents/router.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/router.js rename to src/bower_components/emby-webcomponents/router.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sanitizefilename.js b/src/bower_components/emby-webcomponents/sanitizefilename.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sanitizefilename.js rename to src/bower_components/emby-webcomponents/sanitizefilename.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js b/src/bower_components/emby-webcomponents/scroller/smoothscroller.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js rename to src/bower_components/emby-webcomponents/scroller/smoothscroller.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/scrollhelper.js b/src/bower_components/emby-webcomponents/scrollhelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/scrollhelper.js rename to src/bower_components/emby-webcomponents/scrollhelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/scrollstyles.css b/src/bower_components/emby-webcomponents/scrollstyles.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/scrollstyles.css rename to src/bower_components/emby-webcomponents/scrollstyles.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/search/searchfields.css b/src/bower_components/emby-webcomponents/search/searchfields.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/search/searchfields.css rename to src/bower_components/emby-webcomponents/search/searchfields.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/search/searchfields.js b/src/bower_components/emby-webcomponents/search/searchfields.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/search/searchfields.js rename to src/bower_components/emby-webcomponents/search/searchfields.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/search/searchfields.template.html b/src/bower_components/emby-webcomponents/search/searchfields.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/search/searchfields.template.html rename to src/bower_components/emby-webcomponents/search/searchfields.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/search/searchresults.js b/src/bower_components/emby-webcomponents/search/searchresults.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/search/searchresults.js rename to src/bower_components/emby-webcomponents/search/searchresults.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/search/searchresults.template.html b/src/bower_components/emby-webcomponents/search/searchresults.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/search/searchresults.template.html rename to src/bower_components/emby-webcomponents/search/searchresults.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/serverrestartdialog/serverrestartdialog.js b/src/bower_components/emby-webcomponents/serverrestartdialog/serverrestartdialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/serverrestartdialog/serverrestartdialog.js rename to src/bower_components/emby-webcomponents/serverrestartdialog/serverrestartdialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/serviceworker/notifications.js b/src/bower_components/emby-webcomponents/serviceworker/notifications.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/serviceworker/notifications.js rename to src/bower_components/emby-webcomponents/serviceworker/notifications.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/serviceworker/sync.js b/src/bower_components/emby-webcomponents/serviceworker/sync.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/serviceworker/sync.js rename to src/bower_components/emby-webcomponents/serviceworker/sync.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sessionplayer.js b/src/bower_components/emby-webcomponents/sessionplayer.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sessionplayer.js rename to src/bower_components/emby-webcomponents/sessionplayer.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/shell.js b/src/bower_components/emby-webcomponents/shell.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/shell.js rename to src/bower_components/emby-webcomponents/shell.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/shortcuts.js b/src/bower_components/emby-webcomponents/shortcuts.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/shortcuts.js rename to src/bower_components/emby-webcomponents/shortcuts.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/skinmanager.js b/src/bower_components/emby-webcomponents/skinmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/skinmanager.js rename to src/bower_components/emby-webcomponents/skinmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/slideshow/slideshow.js b/src/bower_components/emby-webcomponents/slideshow/slideshow.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/slideshow/slideshow.js rename to src/bower_components/emby-webcomponents/slideshow/slideshow.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/slideshow/style.css b/src/bower_components/emby-webcomponents/slideshow/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/slideshow/style.css rename to src/bower_components/emby-webcomponents/slideshow/style.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/sortmenu/sortmenu.js b/src/bower_components/emby-webcomponents/sortmenu/sortmenu.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sortmenu/sortmenu.js rename to src/bower_components/emby-webcomponents/sortmenu/sortmenu.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sortmenu/sortmenu.template.html b/src/bower_components/emby-webcomponents/sortmenu/sortmenu.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sortmenu/sortmenu.template.html rename to src/bower_components/emby-webcomponents/sortmenu/sortmenu.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/staticbackdrops.js b/src/bower_components/emby-webcomponents/staticbackdrops.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/staticbackdrops.js rename to src/bower_components/emby-webcomponents/staticbackdrops.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ar.json b/src/bower_components/emby-webcomponents/strings/ar.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ar.json rename to src/bower_components/emby-webcomponents/strings/ar.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/be-by.json b/src/bower_components/emby-webcomponents/strings/be-by.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/be-by.json rename to src/bower_components/emby-webcomponents/strings/be-by.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/bg-bg.json b/src/bower_components/emby-webcomponents/strings/bg-bg.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/bg-bg.json rename to src/bower_components/emby-webcomponents/strings/bg-bg.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ca.json b/src/bower_components/emby-webcomponents/strings/ca.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ca.json rename to src/bower_components/emby-webcomponents/strings/ca.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/cs.json b/src/bower_components/emby-webcomponents/strings/cs.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/cs.json rename to src/bower_components/emby-webcomponents/strings/cs.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/da.json b/src/bower_components/emby-webcomponents/strings/da.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/da.json rename to src/bower_components/emby-webcomponents/strings/da.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/de.json b/src/bower_components/emby-webcomponents/strings/de.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/de.json rename to src/bower_components/emby-webcomponents/strings/de.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/el.json b/src/bower_components/emby-webcomponents/strings/el.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/el.json rename to src/bower_components/emby-webcomponents/strings/el.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/en-gb.json b/src/bower_components/emby-webcomponents/strings/en-gb.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/en-gb.json rename to src/bower_components/emby-webcomponents/strings/en-gb.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/en-us.json b/src/bower_components/emby-webcomponents/strings/en-us.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/en-us.json rename to src/bower_components/emby-webcomponents/strings/en-us.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es-ar.json b/src/bower_components/emby-webcomponents/strings/es-ar.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/es-ar.json rename to src/bower_components/emby-webcomponents/strings/es-ar.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es-mx.json b/src/bower_components/emby-webcomponents/strings/es-mx.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/es-mx.json rename to src/bower_components/emby-webcomponents/strings/es-mx.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es.json b/src/bower_components/emby-webcomponents/strings/es.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/es.json rename to src/bower_components/emby-webcomponents/strings/es.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fi.json b/src/bower_components/emby-webcomponents/strings/fi.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/fi.json rename to src/bower_components/emby-webcomponents/strings/fi.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fr-ca.json b/src/bower_components/emby-webcomponents/strings/fr-ca.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/fr-ca.json rename to src/bower_components/emby-webcomponents/strings/fr-ca.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json b/src/bower_components/emby-webcomponents/strings/fr.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/fr.json rename to src/bower_components/emby-webcomponents/strings/fr.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json b/src/bower_components/emby-webcomponents/strings/gsw.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json rename to src/bower_components/emby-webcomponents/strings/gsw.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/he.json b/src/bower_components/emby-webcomponents/strings/he.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/he.json rename to src/bower_components/emby-webcomponents/strings/he.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/hr.json b/src/bower_components/emby-webcomponents/strings/hr.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/hr.json rename to src/bower_components/emby-webcomponents/strings/hr.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/hu.json b/src/bower_components/emby-webcomponents/strings/hu.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/hu.json rename to src/bower_components/emby-webcomponents/strings/hu.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/id.json b/src/bower_components/emby-webcomponents/strings/id.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/id.json rename to src/bower_components/emby-webcomponents/strings/id.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/it.json b/src/bower_components/emby-webcomponents/strings/it.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/it.json rename to src/bower_components/emby-webcomponents/strings/it.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json b/src/bower_components/emby-webcomponents/strings/kk.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/kk.json rename to src/bower_components/emby-webcomponents/strings/kk.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ko.json b/src/bower_components/emby-webcomponents/strings/ko.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ko.json rename to src/bower_components/emby-webcomponents/strings/ko.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/lt-lt.json b/src/bower_components/emby-webcomponents/strings/lt-lt.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/lt-lt.json rename to src/bower_components/emby-webcomponents/strings/lt-lt.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ms.json b/src/bower_components/emby-webcomponents/strings/ms.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ms.json rename to src/bower_components/emby-webcomponents/strings/ms.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/nb.json b/src/bower_components/emby-webcomponents/strings/nb.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/nb.json rename to src/bower_components/emby-webcomponents/strings/nb.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json b/src/bower_components/emby-webcomponents/strings/nl.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/nl.json rename to src/bower_components/emby-webcomponents/strings/nl.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pl.json b/src/bower_components/emby-webcomponents/strings/pl.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/pl.json rename to src/bower_components/emby-webcomponents/strings/pl.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-br.json b/src/bower_components/emby-webcomponents/strings/pt-br.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/pt-br.json rename to src/bower_components/emby-webcomponents/strings/pt-br.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-pt.json b/src/bower_components/emby-webcomponents/strings/pt-pt.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/pt-pt.json rename to src/bower_components/emby-webcomponents/strings/pt-pt.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ro.json b/src/bower_components/emby-webcomponents/strings/ro.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ro.json rename to src/bower_components/emby-webcomponents/strings/ro.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json b/src/bower_components/emby-webcomponents/strings/ru.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/ru.json rename to src/bower_components/emby-webcomponents/strings/ru.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sk.json b/src/bower_components/emby-webcomponents/strings/sk.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/sk.json rename to src/bower_components/emby-webcomponents/strings/sk.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sl-si.json b/src/bower_components/emby-webcomponents/strings/sl-si.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/sl-si.json rename to src/bower_components/emby-webcomponents/strings/sl-si.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sv.json b/src/bower_components/emby-webcomponents/strings/sv.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/sv.json rename to src/bower_components/emby-webcomponents/strings/sv.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/tr.json b/src/bower_components/emby-webcomponents/strings/tr.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/tr.json rename to src/bower_components/emby-webcomponents/strings/tr.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/uk.json b/src/bower_components/emby-webcomponents/strings/uk.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/uk.json rename to src/bower_components/emby-webcomponents/strings/uk.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/vi.json b/src/bower_components/emby-webcomponents/strings/vi.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/vi.json rename to src/bower_components/emby-webcomponents/strings/vi.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-cn.json b/src/bower_components/emby-webcomponents/strings/zh-cn.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/zh-cn.json rename to src/bower_components/emby-webcomponents/strings/zh-cn.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-hk.json b/src/bower_components/emby-webcomponents/strings/zh-hk.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/zh-hk.json rename to src/bower_components/emby-webcomponents/strings/zh-hk.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-tw.json b/src/bower_components/emby-webcomponents/strings/zh-tw.json similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/strings/zh-tw.json rename to src/bower_components/emby-webcomponents/strings/zh-tw.json diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.css b/src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.css rename to src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js b/src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js rename to src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.template.html b/src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.template.html rename to src/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitleappearancehelper.js b/src/bower_components/emby-webcomponents/subtitlesettings/subtitleappearancehelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitleappearancehelper.js rename to src/bower_components/emby-webcomponents/subtitlesettings/subtitleappearancehelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.js b/src/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.js rename to src/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.template.html b/src/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.template.html rename to src/bower_components/emby-webcomponents/subtitlesettings/subtitlesettings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/sync/emby-downloadbutton.js b/src/bower_components/emby-webcomponents/sync/emby-downloadbutton.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sync/emby-downloadbutton.js rename to src/bower_components/emby-webcomponents/sync/emby-downloadbutton.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sync/sync.js b/src/bower_components/emby-webcomponents/sync/sync.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sync/sync.js rename to src/bower_components/emby-webcomponents/sync/sync.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sync/syncjobeditor.js b/src/bower_components/emby-webcomponents/sync/syncjobeditor.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sync/syncjobeditor.js rename to src/bower_components/emby-webcomponents/sync/syncjobeditor.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/sync/syncjoblist.js b/src/bower_components/emby-webcomponents/sync/syncjoblist.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/sync/syncjoblist.js rename to src/bower_components/emby-webcomponents/sync/syncjoblist.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/tabbedview/itemstab.js b/src/bower_components/emby-webcomponents/tabbedview/itemstab.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/tabbedview/itemstab.js rename to src/bower_components/emby-webcomponents/tabbedview/itemstab.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/tabbedview/tabbedview.js b/src/bower_components/emby-webcomponents/tabbedview/tabbedview.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/tabbedview/tabbedview.js rename to src/bower_components/emby-webcomponents/tabbedview/tabbedview.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/thememediaplayer.js b/src/bower_components/emby-webcomponents/thememediaplayer.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/thememediaplayer.js rename to src/bower_components/emby-webcomponents/thememediaplayer.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/appletv/theme.css b/src/bower_components/emby-webcomponents/themes/appletv/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/appletv/theme.css rename to src/bower_components/emby-webcomponents/themes/appletv/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/blueradiance/bg.jpg b/src/bower_components/emby-webcomponents/themes/blueradiance/bg.jpg similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/blueradiance/bg.jpg rename to src/bower_components/emby-webcomponents/themes/blueradiance/bg.jpg diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/blueradiance/theme.css b/src/bower_components/emby-webcomponents/themes/blueradiance/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/blueradiance/theme.css rename to src/bower_components/emby-webcomponents/themes/blueradiance/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/dark-classic/theme.css b/src/bower_components/emby-webcomponents/themes/dark-classic/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/dark-classic/theme.css rename to src/bower_components/emby-webcomponents/themes/dark-classic/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/dark-green/theme.css b/src/bower_components/emby-webcomponents/themes/dark-green/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/dark-green/theme.css rename to src/bower_components/emby-webcomponents/themes/dark-green/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/dark-red/theme.css b/src/bower_components/emby-webcomponents/themes/dark-red/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/dark-red/theme.css rename to src/bower_components/emby-webcomponents/themes/dark-red/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/dark/theme.css b/src/bower_components/emby-webcomponents/themes/dark/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/dark/theme.css rename to src/bower_components/emby-webcomponents/themes/dark/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/halloween/theme.css b/src/bower_components/emby-webcomponents/themes/halloween/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/halloween/theme.css rename to src/bower_components/emby-webcomponents/themes/halloween/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-blue/theme.css b/src/bower_components/emby-webcomponents/themes/light-blue/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-blue/theme.css rename to src/bower_components/emby-webcomponents/themes/light-blue/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-classic/theme.css b/src/bower_components/emby-webcomponents/themes/light-classic/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-classic/theme.css rename to src/bower_components/emby-webcomponents/themes/light-classic/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-green/theme.css b/src/bower_components/emby-webcomponents/themes/light-green/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-green/theme.css rename to src/bower_components/emby-webcomponents/themes/light-green/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-pink/theme.css b/src/bower_components/emby-webcomponents/themes/light-pink/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-pink/theme.css rename to src/bower_components/emby-webcomponents/themes/light-pink/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-purple/theme.css b/src/bower_components/emby-webcomponents/themes/light-purple/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-purple/theme.css rename to src/bower_components/emby-webcomponents/themes/light-purple/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light-red/theme.css b/src/bower_components/emby-webcomponents/themes/light-red/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light-red/theme.css rename to src/bower_components/emby-webcomponents/themes/light-red/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/light/theme.css b/src/bower_components/emby-webcomponents/themes/light/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/light/theme.css rename to src/bower_components/emby-webcomponents/themes/light/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/logodark.png b/src/bower_components/emby-webcomponents/themes/logodark.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/logodark.png rename to src/bower_components/emby-webcomponents/themes/logodark.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/logowhite.png b/src/bower_components/emby-webcomponents/themes/logowhite.png similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/logowhite.png rename to src/bower_components/emby-webcomponents/themes/logowhite.png diff --git a/dashboard-ui/bower_components/emby-webcomponents/themes/wmc/theme.css b/src/bower_components/emby-webcomponents/themes/wmc/theme.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/themes/wmc/theme.css rename to src/bower_components/emby-webcomponents/themes/wmc/theme.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/toast/toast.css b/src/bower_components/emby-webcomponents/toast/toast.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/toast/toast.css rename to src/bower_components/emby-webcomponents/toast/toast.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/toast/toast.js b/src/bower_components/emby-webcomponents/toast/toast.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/toast/toast.js rename to src/bower_components/emby-webcomponents/toast/toast.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/touchhelper.js b/src/bower_components/emby-webcomponents/touchhelper.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/touchhelper.js rename to src/bower_components/emby-webcomponents/touchhelper.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/upnextdialog/upnextdialog.css b/src/bower_components/emby-webcomponents/upnextdialog/upnextdialog.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/upnextdialog/upnextdialog.css rename to src/bower_components/emby-webcomponents/upnextdialog/upnextdialog.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/upnextdialog/upnextdialog.js b/src/bower_components/emby-webcomponents/upnextdialog/upnextdialog.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/upnextdialog/upnextdialog.js rename to src/bower_components/emby-webcomponents/upnextdialog/upnextdialog.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/emby-playstatebutton.js b/src/bower_components/emby-webcomponents/userdatabuttons/emby-playstatebutton.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/emby-playstatebutton.js rename to src/bower_components/emby-webcomponents/userdatabuttons/emby-playstatebutton.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/emby-ratingbutton.js b/src/bower_components/emby-webcomponents/userdatabuttons/emby-ratingbutton.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/emby-ratingbutton.js rename to src/bower_components/emby-webcomponents/userdatabuttons/emby-ratingbutton.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.css b/src/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.css rename to src/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.js b/src/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.js rename to src/bower_components/emby-webcomponents/userdatabuttons/userdatabuttons.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/usersettings/usersettings.js b/src/bower_components/emby-webcomponents/usersettings/usersettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/usersettings/usersettings.js rename to src/bower_components/emby-webcomponents/usersettings/usersettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/usersettings/usersettingsbuilder.js b/src/bower_components/emby-webcomponents/usersettings/usersettingsbuilder.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/usersettings/usersettingsbuilder.js rename to src/bower_components/emby-webcomponents/usersettings/usersettingsbuilder.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.css b/src/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.css rename to src/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.css diff --git a/dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.js b/src/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.js rename to src/bower_components/emby-webcomponents/viewmanager/viewcontainer-lite.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewmanager.js b/src/bower_components/emby-webcomponents/viewmanager/viewmanager.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/viewmanager/viewmanager.js rename to src/bower_components/emby-webcomponents/viewmanager/viewmanager.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/viewsettings/viewsettings.js b/src/bower_components/emby-webcomponents/viewsettings/viewsettings.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/viewsettings/viewsettings.js rename to src/bower_components/emby-webcomponents/viewsettings/viewsettings.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/viewsettings/viewsettings.template.html b/src/bower_components/emby-webcomponents/viewsettings/viewsettings.template.html similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/viewsettings/viewsettings.template.html rename to src/bower_components/emby-webcomponents/viewsettings/viewsettings.template.html diff --git a/dashboard-ui/bower_components/emby-webcomponents/visibleinviewport.js b/src/bower_components/emby-webcomponents/visibleinviewport.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/visibleinviewport.js rename to src/bower_components/emby-webcomponents/visibleinviewport.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/youtubeplayer/plugin.js b/src/bower_components/emby-webcomponents/youtubeplayer/plugin.js similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/youtubeplayer/plugin.js rename to src/bower_components/emby-webcomponents/youtubeplayer/plugin.js diff --git a/dashboard-ui/bower_components/emby-webcomponents/youtubeplayer/style.css b/src/bower_components/emby-webcomponents/youtubeplayer/style.css similarity index 100% rename from dashboard-ui/bower_components/emby-webcomponents/youtubeplayer/style.css rename to src/bower_components/emby-webcomponents/youtubeplayer/style.css diff --git a/dashboard-ui/bower_components/fetch/fetch.js b/src/bower_components/fetch/fetch.js similarity index 100% rename from dashboard-ui/bower_components/fetch/fetch.js rename to src/bower_components/fetch/fetch.js diff --git a/dashboard-ui/bower_components/hlsjs/dist/hls.min.js b/src/bower_components/hlsjs/dist/hls.min.js similarity index 100% rename from dashboard-ui/bower_components/hlsjs/dist/hls.min.js rename to src/bower_components/hlsjs/dist/hls.min.js diff --git a/dashboard-ui/bower_components/hlsjs/hls.js.sublime-project b/src/bower_components/hlsjs/hls.js.sublime-project similarity index 100% rename from dashboard-ui/bower_components/hlsjs/hls.js.sublime-project rename to src/bower_components/hlsjs/hls.js.sublime-project diff --git a/dashboard-ui/bower_components/howlerjs/dist/howler.min.js b/src/bower_components/howlerjs/dist/howler.min.js similarity index 100% rename from dashboard-ui/bower_components/howlerjs/dist/howler.min.js rename to src/bower_components/howlerjs/dist/howler.min.js diff --git a/dashboard-ui/bower_components/jquery/dist/jquery.slim.min.js b/src/bower_components/jquery/dist/jquery.slim.min.js similarity index 100% rename from dashboard-ui/bower_components/jquery/dist/jquery.slim.min.js rename to src/bower_components/jquery/dist/jquery.slim.min.js diff --git a/dashboard-ui/bower_components/libjass/libjass.css b/src/bower_components/libjass/libjass.css similarity index 100% rename from dashboard-ui/bower_components/libjass/libjass.css rename to src/bower_components/libjass/libjass.css diff --git a/dashboard-ui/bower_components/libjass/libjass.min.js b/src/bower_components/libjass/libjass.min.js similarity index 100% rename from dashboard-ui/bower_components/libjass/libjass.min.js rename to src/bower_components/libjass/libjass.min.js diff --git a/dashboard-ui/bower_components/query-string/index.js b/src/bower_components/query-string/index.js similarity index 100% rename from dashboard-ui/bower_components/query-string/index.js rename to src/bower_components/query-string/index.js diff --git a/dashboard-ui/bower_components/query-string/test.js b/src/bower_components/query-string/test.js similarity index 100% rename from dashboard-ui/bower_components/query-string/test.js rename to src/bower_components/query-string/test.js diff --git a/dashboard-ui/bower_components/requirejs/require.js b/src/bower_components/requirejs/require.js similarity index 100% rename from dashboard-ui/bower_components/requirejs/require.js rename to src/bower_components/requirejs/require.js diff --git a/dashboard-ui/bower_components/webcomponentsjs/webcomponents-lite.min.js b/src/bower_components/webcomponentsjs/webcomponents-lite.min.js similarity index 100% rename from dashboard-ui/bower_components/webcomponentsjs/webcomponents-lite.min.js rename to src/bower_components/webcomponentsjs/webcomponents-lite.min.js diff --git a/dashboard-ui/camerauploadsettings.html b/src/camerauploadsettings.html similarity index 100% rename from dashboard-ui/camerauploadsettings.html rename to src/camerauploadsettings.html diff --git a/dashboard-ui/components/accessschedule/accessschedule.js b/src/components/accessschedule/accessschedule.js similarity index 100% rename from dashboard-ui/components/accessschedule/accessschedule.js rename to src/components/accessschedule/accessschedule.js diff --git a/dashboard-ui/components/accessschedule/accessschedule.template.html b/src/components/accessschedule/accessschedule.template.html similarity index 100% rename from dashboard-ui/components/accessschedule/accessschedule.template.html rename to src/components/accessschedule/accessschedule.template.html diff --git a/dashboard-ui/components/activitylog.js b/src/components/activitylog.js similarity index 100% rename from dashboard-ui/components/activitylog.js rename to src/components/activitylog.js diff --git a/dashboard-ui/components/apphost.js b/src/components/apphost.js similarity index 100% rename from dashboard-ui/components/apphost.js rename to src/components/apphost.js diff --git a/dashboard-ui/components/categorysyncbuttons.js b/src/components/categorysyncbuttons.js similarity index 100% rename from dashboard-ui/components/categorysyncbuttons.js rename to src/components/categorysyncbuttons.js diff --git a/dashboard-ui/components/channelmapper/channelmapper.js b/src/components/channelmapper/channelmapper.js similarity index 100% rename from dashboard-ui/components/channelmapper/channelmapper.js rename to src/components/channelmapper/channelmapper.js diff --git a/dashboard-ui/components/directorybrowser/directorybrowser.css b/src/components/directorybrowser/directorybrowser.css similarity index 100% rename from dashboard-ui/components/directorybrowser/directorybrowser.css rename to src/components/directorybrowser/directorybrowser.css diff --git a/dashboard-ui/components/directorybrowser/directorybrowser.js b/src/components/directorybrowser/directorybrowser.js similarity index 100% rename from dashboard-ui/components/directorybrowser/directorybrowser.js rename to src/components/directorybrowser/directorybrowser.js diff --git a/dashboard-ui/components/favoriteitems.js b/src/components/favoriteitems.js similarity index 100% rename from dashboard-ui/components/favoriteitems.js rename to src/components/favoriteitems.js diff --git a/dashboard-ui/components/filterdialog/filterdialog.js b/src/components/filterdialog/filterdialog.js similarity index 100% rename from dashboard-ui/components/filterdialog/filterdialog.js rename to src/components/filterdialog/filterdialog.js diff --git a/dashboard-ui/components/filterdialog/filterdialog.template.html b/src/components/filterdialog/filterdialog.template.html similarity index 100% rename from dashboard-ui/components/filterdialog/filterdialog.template.html rename to src/components/filterdialog/filterdialog.template.html diff --git a/dashboard-ui/components/filterdialog/style.css b/src/components/filterdialog/style.css similarity index 100% rename from dashboard-ui/components/filterdialog/style.css rename to src/components/filterdialog/style.css diff --git a/dashboard-ui/components/groupedcards.js b/src/components/groupedcards.js similarity index 100% rename from dashboard-ui/components/groupedcards.js rename to src/components/groupedcards.js diff --git a/dashboard-ui/components/guestinviter/guestinviter.js b/src/components/guestinviter/guestinviter.js similarity index 100% rename from dashboard-ui/components/guestinviter/guestinviter.js rename to src/components/guestinviter/guestinviter.js diff --git a/dashboard-ui/components/guestinviter/guestinviter.template.html b/src/components/guestinviter/guestinviter.template.html similarity index 100% rename from dashboard-ui/components/guestinviter/guestinviter.template.html rename to src/components/guestinviter/guestinviter.template.html diff --git a/dashboard-ui/components/humanedate.js b/src/components/humanedate.js similarity index 100% rename from dashboard-ui/components/humanedate.js rename to src/components/humanedate.js diff --git a/dashboard-ui/components/iap.js b/src/components/iap.js similarity index 100% rename from dashboard-ui/components/iap.js rename to src/components/iap.js diff --git a/dashboard-ui/components/imageoptionseditor/imageoptionseditor.js b/src/components/imageoptionseditor/imageoptionseditor.js similarity index 100% rename from dashboard-ui/components/imageoptionseditor/imageoptionseditor.js rename to src/components/imageoptionseditor/imageoptionseditor.js diff --git a/dashboard-ui/components/imageoptionseditor/imageoptionseditor.template.html b/src/components/imageoptionseditor/imageoptionseditor.template.html similarity index 100% rename from dashboard-ui/components/imageoptionseditor/imageoptionseditor.template.html rename to src/components/imageoptionseditor/imageoptionseditor.template.html diff --git a/dashboard-ui/components/libraryoptionseditor/libraryoptionseditor.js b/src/components/libraryoptionseditor/libraryoptionseditor.js similarity index 100% rename from dashboard-ui/components/libraryoptionseditor/libraryoptionseditor.js rename to src/components/libraryoptionseditor/libraryoptionseditor.js diff --git a/dashboard-ui/components/libraryoptionseditor/libraryoptionseditor.template.html b/src/components/libraryoptionseditor/libraryoptionseditor.template.html similarity index 100% rename from dashboard-ui/components/libraryoptionseditor/libraryoptionseditor.template.html rename to src/components/libraryoptionseditor/libraryoptionseditor.template.html diff --git a/dashboard-ui/components/medialibrarycreator/medialibrarycreator.js b/src/components/medialibrarycreator/medialibrarycreator.js similarity index 100% rename from dashboard-ui/components/medialibrarycreator/medialibrarycreator.js rename to src/components/medialibrarycreator/medialibrarycreator.js diff --git a/dashboard-ui/components/medialibrarycreator/medialibrarycreator.template.html b/src/components/medialibrarycreator/medialibrarycreator.template.html similarity index 100% rename from dashboard-ui/components/medialibrarycreator/medialibrarycreator.template.html rename to src/components/medialibrarycreator/medialibrarycreator.template.html diff --git a/dashboard-ui/components/medialibraryeditor/medialibraryeditor.js b/src/components/medialibraryeditor/medialibraryeditor.js similarity index 100% rename from dashboard-ui/components/medialibraryeditor/medialibraryeditor.js rename to src/components/medialibraryeditor/medialibraryeditor.js diff --git a/dashboard-ui/components/medialibraryeditor/medialibraryeditor.template.html b/src/components/medialibraryeditor/medialibraryeditor.template.html similarity index 100% rename from dashboard-ui/components/medialibraryeditor/medialibraryeditor.template.html rename to src/components/medialibraryeditor/medialibraryeditor.template.html diff --git a/dashboard-ui/components/navdrawer/navdrawer.css b/src/components/navdrawer/navdrawer.css similarity index 100% rename from dashboard-ui/components/navdrawer/navdrawer.css rename to src/components/navdrawer/navdrawer.css diff --git a/dashboard-ui/components/navdrawer/navdrawer.js b/src/components/navdrawer/navdrawer.js similarity index 100% rename from dashboard-ui/components/navdrawer/navdrawer.js rename to src/components/navdrawer/navdrawer.js diff --git a/dashboard-ui/components/remotecontrol.js b/src/components/remotecontrol.js similarity index 100% rename from dashboard-ui/components/remotecontrol.js rename to src/components/remotecontrol.js diff --git a/dashboard-ui/components/tunerpicker.js b/src/components/tunerpicker.js similarity index 100% rename from dashboard-ui/components/tunerpicker.js rename to src/components/tunerpicker.js diff --git a/dashboard-ui/components/tvproviders/schedulesdirect.js b/src/components/tvproviders/schedulesdirect.js similarity index 100% rename from dashboard-ui/components/tvproviders/schedulesdirect.js rename to src/components/tvproviders/schedulesdirect.js diff --git a/dashboard-ui/components/tvproviders/schedulesdirect.template.html b/src/components/tvproviders/schedulesdirect.template.html similarity index 100% rename from dashboard-ui/components/tvproviders/schedulesdirect.template.html rename to src/components/tvproviders/schedulesdirect.template.html diff --git a/dashboard-ui/components/tvproviders/xmltv.js b/src/components/tvproviders/xmltv.js similarity index 100% rename from dashboard-ui/components/tvproviders/xmltv.js rename to src/components/tvproviders/xmltv.js diff --git a/dashboard-ui/components/tvproviders/xmltv.template.html b/src/components/tvproviders/xmltv.template.html similarity index 100% rename from dashboard-ui/components/tvproviders/xmltv.template.html rename to src/components/tvproviders/xmltv.template.html diff --git a/dashboard-ui/components/viewcontainer-lite.js b/src/components/viewcontainer-lite.js similarity index 100% rename from dashboard-ui/components/viewcontainer-lite.js rename to src/components/viewcontainer-lite.js diff --git a/dashboard-ui/css/dashboard.css b/src/css/dashboard.css similarity index 100% rename from dashboard-ui/css/dashboard.css rename to src/css/dashboard.css diff --git a/dashboard-ui/css/detailtable.css b/src/css/detailtable.css similarity index 100% rename from dashboard-ui/css/detailtable.css rename to src/css/detailtable.css diff --git a/dashboard-ui/css/images/ani_equalizer_white.gif b/src/css/images/ani_equalizer_white.gif similarity index 100% rename from dashboard-ui/css/images/ani_equalizer_white.gif rename to src/css/images/ani_equalizer_white.gif diff --git a/dashboard-ui/css/images/logindefault.png b/src/css/images/logindefault.png similarity index 100% rename from dashboard-ui/css/images/logindefault.png rename to src/css/images/logindefault.png diff --git a/dashboard-ui/css/images/logoblack.png b/src/css/images/logoblack.png similarity index 100% rename from dashboard-ui/css/images/logoblack.png rename to src/css/images/logoblack.png diff --git a/dashboard-ui/css/librarybrowser.css b/src/css/librarybrowser.css similarity index 100% rename from dashboard-ui/css/librarybrowser.css rename to src/css/librarybrowser.css diff --git a/dashboard-ui/css/livetv.css b/src/css/livetv.css similarity index 100% rename from dashboard-ui/css/livetv.css rename to src/css/livetv.css diff --git a/dashboard-ui/css/metadataeditor.css b/src/css/metadataeditor.css similarity index 100% rename from dashboard-ui/css/metadataeditor.css rename to src/css/metadataeditor.css diff --git a/dashboard-ui/css/nowplaying.css b/src/css/nowplaying.css similarity index 100% rename from dashboard-ui/css/nowplaying.css rename to src/css/nowplaying.css diff --git a/dashboard-ui/css/site.css b/src/css/site.css similarity index 100% rename from dashboard-ui/css/site.css rename to src/css/site.css diff --git a/dashboard-ui/css/videoosd.css b/src/css/videoosd.css similarity index 100% rename from dashboard-ui/css/videoosd.css rename to src/css/videoosd.css diff --git a/dashboard-ui/dashboard.html b/src/dashboard.html similarity index 100% rename from dashboard-ui/dashboard.html rename to src/dashboard.html diff --git a/dashboard-ui/dashboard/aboutpage.js b/src/dashboard/aboutpage.js similarity index 100% rename from dashboard-ui/dashboard/aboutpage.js rename to src/dashboard/aboutpage.js diff --git a/dashboard-ui/dashboard/dashboardgeneral.js b/src/dashboard/dashboardgeneral.js similarity index 100% rename from dashboard-ui/dashboard/dashboardgeneral.js rename to src/dashboard/dashboardgeneral.js diff --git a/dashboard-ui/dashboard/dashboardhosting.js b/src/dashboard/dashboardhosting.js similarity index 100% rename from dashboard-ui/dashboard/dashboardhosting.js rename to src/dashboard/dashboardhosting.js diff --git a/dashboard-ui/dashboard/devicesupload.js b/src/dashboard/devicesupload.js similarity index 100% rename from dashboard-ui/dashboard/devicesupload.js rename to src/dashboard/devicesupload.js diff --git a/dashboard-ui/dashboard/librarydisplay.js b/src/dashboard/librarydisplay.js similarity index 100% rename from dashboard-ui/dashboard/librarydisplay.js rename to src/dashboard/librarydisplay.js diff --git a/dashboard-ui/dashboard/librarysettings.js b/src/dashboard/librarysettings.js similarity index 100% rename from dashboard-ui/dashboard/librarysettings.js rename to src/dashboard/librarysettings.js diff --git a/dashboard-ui/dashboard/livetvtuner.js b/src/dashboard/livetvtuner.js similarity index 100% rename from dashboard-ui/dashboard/livetvtuner.js rename to src/dashboard/livetvtuner.js diff --git a/dashboard-ui/dashboard/logpage.js b/src/dashboard/logpage.js similarity index 100% rename from dashboard-ui/dashboard/logpage.js rename to src/dashboard/logpage.js diff --git a/dashboard-ui/dashboard/serveractivity.js b/src/dashboard/serveractivity.js similarity index 100% rename from dashboard-ui/dashboard/serveractivity.js rename to src/dashboard/serveractivity.js diff --git a/dashboard-ui/dashboard/wizardfinishpage.js b/src/dashboard/wizardfinishpage.js similarity index 100% rename from dashboard-ui/dashboard/wizardfinishpage.js rename to src/dashboard/wizardfinishpage.js diff --git a/dashboard-ui/dashboard/wizardremoteaccess.js b/src/dashboard/wizardremoteaccess.js similarity index 100% rename from dashboard-ui/dashboard/wizardremoteaccess.js rename to src/dashboard/wizardremoteaccess.js diff --git a/dashboard-ui/dashboard/wizardsettings.js b/src/dashboard/wizardsettings.js similarity index 100% rename from dashboard-ui/dashboard/wizardsettings.js rename to src/dashboard/wizardsettings.js diff --git a/dashboard-ui/dashboard/wizardstart.js b/src/dashboard/wizardstart.js similarity index 100% rename from dashboard-ui/dashboard/wizardstart.js rename to src/dashboard/wizardstart.js diff --git a/dashboard-ui/dashboardgeneral.html b/src/dashboardgeneral.html similarity index 100% rename from dashboard-ui/dashboardgeneral.html rename to src/dashboardgeneral.html diff --git a/dashboard-ui/dashboardhosting.html b/src/dashboardhosting.html similarity index 100% rename from dashboard-ui/dashboardhosting.html rename to src/dashboardhosting.html diff --git a/dashboard-ui/devices/device.html b/src/devices/device.html similarity index 100% rename from dashboard-ui/devices/device.html rename to src/devices/device.html diff --git a/dashboard-ui/devices/device.js b/src/devices/device.js similarity index 100% rename from dashboard-ui/devices/device.js rename to src/devices/device.js diff --git a/dashboard-ui/devices/devices.html b/src/devices/devices.html similarity index 100% rename from dashboard-ui/devices/devices.html rename to src/devices/devices.html diff --git a/dashboard-ui/devices/devices.js b/src/devices/devices.js similarity index 100% rename from dashboard-ui/devices/devices.js rename to src/devices/devices.js diff --git a/dashboard-ui/devices/ios/ios.css b/src/devices/ios/ios.css similarity index 100% rename from dashboard-ui/devices/ios/ios.css rename to src/devices/ios/ios.css diff --git a/dashboard-ui/devicesupload.html b/src/devicesupload.html similarity index 100% rename from dashboard-ui/devicesupload.html rename to src/devicesupload.html diff --git a/dashboard-ui/dlnaprofile.html b/src/dlnaprofile.html similarity index 100% rename from dashboard-ui/dlnaprofile.html rename to src/dlnaprofile.html diff --git a/dashboard-ui/dlnaprofiles.html b/src/dlnaprofiles.html similarity index 100% rename from dashboard-ui/dlnaprofiles.html rename to src/dlnaprofiles.html diff --git a/dashboard-ui/dlnasettings.html b/src/dlnasettings.html similarity index 100% rename from dashboard-ui/dlnasettings.html rename to src/dlnasettings.html diff --git a/dashboard-ui/edititemmetadata.html b/src/edititemmetadata.html similarity index 100% rename from dashboard-ui/edititemmetadata.html rename to src/edititemmetadata.html diff --git a/dashboard-ui/encodingsettings.html b/src/encodingsettings.html similarity index 100% rename from dashboard-ui/encodingsettings.html rename to src/encodingsettings.html diff --git a/dashboard-ui/favicon.ico b/src/favicon.ico similarity index 100% rename from dashboard-ui/favicon.ico rename to src/favicon.ico diff --git a/dashboard-ui/forgotpassword.html b/src/forgotpassword.html similarity index 100% rename from dashboard-ui/forgotpassword.html rename to src/forgotpassword.html diff --git a/dashboard-ui/forgotpasswordpin.html b/src/forgotpasswordpin.html similarity index 100% rename from dashboard-ui/forgotpasswordpin.html rename to src/forgotpasswordpin.html diff --git a/dashboard-ui/home.html b/src/home.html similarity index 100% rename from dashboard-ui/home.html rename to src/home.html diff --git a/dashboard-ui/home/favorites.js b/src/home/favorites.js similarity index 100% rename from dashboard-ui/home/favorites.js rename to src/home/favorites.js diff --git a/dashboard-ui/home/home.js b/src/home/home.js similarity index 100% rename from dashboard-ui/home/home.js rename to src/home/home.js diff --git a/dashboard-ui/home/hometab.js b/src/home/hometab.js similarity index 100% rename from dashboard-ui/home/hometab.js rename to src/home/hometab.js diff --git a/dashboard-ui/index.html b/src/index.html similarity index 100% rename from dashboard-ui/index.html rename to src/index.html diff --git a/dashboard-ui/itemdetails.html b/src/itemdetails.html similarity index 100% rename from dashboard-ui/itemdetails.html rename to src/itemdetails.html diff --git a/dashboard-ui/legacy/buttonenabled.js b/src/legacy/buttonenabled.js similarity index 100% rename from dashboard-ui/legacy/buttonenabled.js rename to src/legacy/buttonenabled.js diff --git a/dashboard-ui/legacy/dashboard.js b/src/legacy/dashboard.js similarity index 100% rename from dashboard-ui/legacy/dashboard.js rename to src/legacy/dashboard.js diff --git a/dashboard-ui/legacy/fnchecked.js b/src/legacy/fnchecked.js similarity index 100% rename from dashboard-ui/legacy/fnchecked.js rename to src/legacy/fnchecked.js diff --git a/dashboard-ui/legacy/selectmenu.js b/src/legacy/selectmenu.js similarity index 100% rename from dashboard-ui/legacy/selectmenu.js rename to src/legacy/selectmenu.js diff --git a/dashboard-ui/library.html b/src/library.html similarity index 100% rename from dashboard-ui/library.html rename to src/library.html diff --git a/dashboard-ui/librarydisplay.html b/src/librarydisplay.html similarity index 100% rename from dashboard-ui/librarydisplay.html rename to src/librarydisplay.html diff --git a/dashboard-ui/librarysettings.html b/src/librarysettings.html similarity index 100% rename from dashboard-ui/librarysettings.html rename to src/librarysettings.html diff --git a/dashboard-ui/list/list.html b/src/list/list.html similarity index 100% rename from dashboard-ui/list/list.html rename to src/list/list.html diff --git a/dashboard-ui/list/list.js b/src/list/list.js similarity index 100% rename from dashboard-ui/list/list.js rename to src/list/list.js diff --git a/dashboard-ui/livetv.html b/src/livetv.html similarity index 100% rename from dashboard-ui/livetv.html rename to src/livetv.html diff --git a/dashboard-ui/livetvguideprovider.html b/src/livetvguideprovider.html similarity index 100% rename from dashboard-ui/livetvguideprovider.html rename to src/livetvguideprovider.html diff --git a/dashboard-ui/livetvsettings.html b/src/livetvsettings.html similarity index 100% rename from dashboard-ui/livetvsettings.html rename to src/livetvsettings.html diff --git a/dashboard-ui/livetvstatus.html b/src/livetvstatus.html similarity index 100% rename from dashboard-ui/livetvstatus.html rename to src/livetvstatus.html diff --git a/dashboard-ui/livetvtuner.html b/src/livetvtuner.html similarity index 100% rename from dashboard-ui/livetvtuner.html rename to src/livetvtuner.html diff --git a/dashboard-ui/log.html b/src/log.html similarity index 100% rename from dashboard-ui/log.html rename to src/log.html diff --git a/dashboard-ui/login.html b/src/login.html similarity index 100% rename from dashboard-ui/login.html rename to src/login.html diff --git a/dashboard-ui/managedownloads.html b/src/managedownloads.html similarity index 100% rename from dashboard-ui/managedownloads.html rename to src/managedownloads.html diff --git a/dashboard-ui/manifest.json b/src/manifest.json similarity index 100% rename from dashboard-ui/manifest.json rename to src/manifest.json diff --git a/dashboard-ui/metadataimages.html b/src/metadataimages.html similarity index 100% rename from dashboard-ui/metadataimages.html rename to src/metadataimages.html diff --git a/dashboard-ui/metadatanfo.html b/src/metadatanfo.html similarity index 100% rename from dashboard-ui/metadatanfo.html rename to src/metadatanfo.html diff --git a/dashboard-ui/movies.html b/src/movies.html similarity index 100% rename from dashboard-ui/movies.html rename to src/movies.html diff --git a/dashboard-ui/music.html b/src/music.html similarity index 100% rename from dashboard-ui/music.html rename to src/music.html diff --git a/dashboard-ui/mypreferencesdisplay.html b/src/mypreferencesdisplay.html similarity index 100% rename from dashboard-ui/mypreferencesdisplay.html rename to src/mypreferencesdisplay.html diff --git a/dashboard-ui/mypreferenceshome.html b/src/mypreferenceshome.html similarity index 100% rename from dashboard-ui/mypreferenceshome.html rename to src/mypreferenceshome.html diff --git a/dashboard-ui/mypreferenceslanguages.html b/src/mypreferenceslanguages.html similarity index 100% rename from dashboard-ui/mypreferenceslanguages.html rename to src/mypreferenceslanguages.html diff --git a/dashboard-ui/mypreferencesmenu.html b/src/mypreferencesmenu.html similarity index 100% rename from dashboard-ui/mypreferencesmenu.html rename to src/mypreferencesmenu.html diff --git a/dashboard-ui/mypreferencessubtitles.html b/src/mypreferencessubtitles.html similarity index 100% rename from dashboard-ui/mypreferencessubtitles.html rename to src/mypreferencessubtitles.html diff --git a/dashboard-ui/myprofile.html b/src/myprofile.html similarity index 100% rename from dashboard-ui/myprofile.html rename to src/myprofile.html diff --git a/dashboard-ui/mysync.html b/src/mysync.html similarity index 100% rename from dashboard-ui/mysync.html rename to src/mysync.html diff --git a/dashboard-ui/mysyncjob.html b/src/mysyncjob.html similarity index 100% rename from dashboard-ui/mysyncjob.html rename to src/mysyncjob.html diff --git a/dashboard-ui/mysyncsettings.html b/src/mysyncsettings.html similarity index 100% rename from dashboard-ui/mysyncsettings.html rename to src/mysyncsettings.html diff --git a/dashboard-ui/notificationsetting.html b/src/notificationsetting.html similarity index 100% rename from dashboard-ui/notificationsetting.html rename to src/notificationsetting.html diff --git a/dashboard-ui/notificationsettings.html b/src/notificationsettings.html similarity index 100% rename from dashboard-ui/notificationsettings.html rename to src/notificationsettings.html diff --git a/dashboard-ui/nowplaying.html b/src/nowplaying.html similarity index 100% rename from dashboard-ui/nowplaying.html rename to src/nowplaying.html diff --git a/dashboard-ui/playbackconfiguration.html b/src/playbackconfiguration.html similarity index 100% rename from dashboard-ui/playbackconfiguration.html rename to src/playbackconfiguration.html diff --git a/dashboard-ui/plugincatalog.html b/src/plugincatalog.html similarity index 100% rename from dashboard-ui/plugincatalog.html rename to src/plugincatalog.html diff --git a/dashboard-ui/plugins.html b/src/plugins.html similarity index 100% rename from dashboard-ui/plugins.html rename to src/plugins.html diff --git a/dashboard-ui/robots.txt b/src/robots.txt similarity index 100% rename from dashboard-ui/robots.txt rename to src/robots.txt diff --git a/dashboard-ui/scheduledtask.html b/src/scheduledtask.html similarity index 100% rename from dashboard-ui/scheduledtask.html rename to src/scheduledtask.html diff --git a/dashboard-ui/scheduledtasks.html b/src/scheduledtasks.html similarity index 100% rename from dashboard-ui/scheduledtasks.html rename to src/scheduledtasks.html diff --git a/dashboard-ui/scripts/addpluginpage.js b/src/scripts/addpluginpage.js similarity index 100% rename from dashboard-ui/scripts/addpluginpage.js rename to src/scripts/addpluginpage.js diff --git a/dashboard-ui/scripts/apploader.js b/src/scripts/apploader.js similarity index 100% rename from dashboard-ui/scripts/apploader.js rename to src/scripts/apploader.js diff --git a/dashboard-ui/scripts/appservices.js b/src/scripts/appservices.js similarity index 100% rename from dashboard-ui/scripts/appservices.js rename to src/scripts/appservices.js diff --git a/dashboard-ui/scripts/autobackdrops.js b/src/scripts/autobackdrops.js similarity index 100% rename from dashboard-ui/scripts/autobackdrops.js rename to src/scripts/autobackdrops.js diff --git a/dashboard-ui/scripts/camerauploadsettings.js b/src/scripts/camerauploadsettings.js similarity index 100% rename from dashboard-ui/scripts/camerauploadsettings.js rename to src/scripts/camerauploadsettings.js diff --git a/dashboard-ui/scripts/connectlogin.js b/src/scripts/connectlogin.js similarity index 100% rename from dashboard-ui/scripts/connectlogin.js rename to src/scripts/connectlogin.js diff --git a/dashboard-ui/scripts/dashboardpage.js b/src/scripts/dashboardpage.js similarity index 100% rename from dashboard-ui/scripts/dashboardpage.js rename to src/scripts/dashboardpage.js diff --git a/dashboard-ui/scripts/dlnaprofile.js b/src/scripts/dlnaprofile.js similarity index 100% rename from dashboard-ui/scripts/dlnaprofile.js rename to src/scripts/dlnaprofile.js diff --git a/dashboard-ui/scripts/dlnaprofiles.js b/src/scripts/dlnaprofiles.js similarity index 100% rename from dashboard-ui/scripts/dlnaprofiles.js rename to src/scripts/dlnaprofiles.js diff --git a/dashboard-ui/scripts/dlnasettings.js b/src/scripts/dlnasettings.js similarity index 100% rename from dashboard-ui/scripts/dlnasettings.js rename to src/scripts/dlnasettings.js diff --git a/dashboard-ui/scripts/edititemmetadata.js b/src/scripts/edititemmetadata.js similarity index 100% rename from dashboard-ui/scripts/edititemmetadata.js rename to src/scripts/edititemmetadata.js diff --git a/dashboard-ui/scripts/editorsidebar.js b/src/scripts/editorsidebar.js similarity index 100% rename from dashboard-ui/scripts/editorsidebar.js rename to src/scripts/editorsidebar.js diff --git a/dashboard-ui/scripts/encodingsettings.js b/src/scripts/encodingsettings.js similarity index 100% rename from dashboard-ui/scripts/encodingsettings.js rename to src/scripts/encodingsettings.js diff --git a/dashboard-ui/scripts/episodes.js b/src/scripts/episodes.js similarity index 100% rename from dashboard-ui/scripts/episodes.js rename to src/scripts/episodes.js diff --git a/dashboard-ui/scripts/forgotpassword.js b/src/scripts/forgotpassword.js similarity index 100% rename from dashboard-ui/scripts/forgotpassword.js rename to src/scripts/forgotpassword.js diff --git a/dashboard-ui/scripts/forgotpasswordpin.js b/src/scripts/forgotpasswordpin.js similarity index 100% rename from dashboard-ui/scripts/forgotpasswordpin.js rename to src/scripts/forgotpasswordpin.js diff --git a/dashboard-ui/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js similarity index 100% rename from dashboard-ui/scripts/itembynamedetailpage.js rename to src/scripts/itembynamedetailpage.js diff --git a/dashboard-ui/scripts/itemdetailpage.js b/src/scripts/itemdetailpage.js similarity index 100% rename from dashboard-ui/scripts/itemdetailpage.js rename to src/scripts/itemdetailpage.js diff --git a/dashboard-ui/scripts/librarybrowser.js b/src/scripts/librarybrowser.js similarity index 100% rename from dashboard-ui/scripts/librarybrowser.js rename to src/scripts/librarybrowser.js diff --git a/dashboard-ui/scripts/librarymenu.js b/src/scripts/librarymenu.js similarity index 100% rename from dashboard-ui/scripts/librarymenu.js rename to src/scripts/librarymenu.js diff --git a/dashboard-ui/scripts/livetvchannels.js b/src/scripts/livetvchannels.js similarity index 100% rename from dashboard-ui/scripts/livetvchannels.js rename to src/scripts/livetvchannels.js diff --git a/dashboard-ui/scripts/livetvcomponents.js b/src/scripts/livetvcomponents.js similarity index 100% rename from dashboard-ui/scripts/livetvcomponents.js rename to src/scripts/livetvcomponents.js diff --git a/dashboard-ui/scripts/livetvguide.js b/src/scripts/livetvguide.js similarity index 100% rename from dashboard-ui/scripts/livetvguide.js rename to src/scripts/livetvguide.js diff --git a/dashboard-ui/scripts/livetvguideprovider.js b/src/scripts/livetvguideprovider.js similarity index 100% rename from dashboard-ui/scripts/livetvguideprovider.js rename to src/scripts/livetvguideprovider.js diff --git a/dashboard-ui/scripts/livetvrecordings.js b/src/scripts/livetvrecordings.js similarity index 100% rename from dashboard-ui/scripts/livetvrecordings.js rename to src/scripts/livetvrecordings.js diff --git a/dashboard-ui/scripts/livetvschedule.js b/src/scripts/livetvschedule.js similarity index 100% rename from dashboard-ui/scripts/livetvschedule.js rename to src/scripts/livetvschedule.js diff --git a/dashboard-ui/scripts/livetvseriestimers.js b/src/scripts/livetvseriestimers.js similarity index 100% rename from dashboard-ui/scripts/livetvseriestimers.js rename to src/scripts/livetvseriestimers.js diff --git a/dashboard-ui/scripts/livetvsettings.js b/src/scripts/livetvsettings.js similarity index 100% rename from dashboard-ui/scripts/livetvsettings.js rename to src/scripts/livetvsettings.js diff --git a/dashboard-ui/scripts/livetvstatus.js b/src/scripts/livetvstatus.js similarity index 100% rename from dashboard-ui/scripts/livetvstatus.js rename to src/scripts/livetvstatus.js diff --git a/dashboard-ui/scripts/livetvsuggested.js b/src/scripts/livetvsuggested.js similarity index 100% rename from dashboard-ui/scripts/livetvsuggested.js rename to src/scripts/livetvsuggested.js diff --git a/dashboard-ui/scripts/loginpage.js b/src/scripts/loginpage.js similarity index 100% rename from dashboard-ui/scripts/loginpage.js rename to src/scripts/loginpage.js diff --git a/dashboard-ui/scripts/managedownloads.js b/src/scripts/managedownloads.js similarity index 100% rename from dashboard-ui/scripts/managedownloads.js rename to src/scripts/managedownloads.js diff --git a/dashboard-ui/scripts/medialibrarypage.js b/src/scripts/medialibrarypage.js similarity index 100% rename from dashboard-ui/scripts/medialibrarypage.js rename to src/scripts/medialibrarypage.js diff --git a/dashboard-ui/scripts/metadataimagespage.js b/src/scripts/metadataimagespage.js similarity index 100% rename from dashboard-ui/scripts/metadataimagespage.js rename to src/scripts/metadataimagespage.js diff --git a/dashboard-ui/scripts/metadatanfo.js b/src/scripts/metadatanfo.js similarity index 100% rename from dashboard-ui/scripts/metadatanfo.js rename to src/scripts/metadatanfo.js diff --git a/dashboard-ui/scripts/moviecollections.js b/src/scripts/moviecollections.js similarity index 100% rename from dashboard-ui/scripts/moviecollections.js rename to src/scripts/moviecollections.js diff --git a/dashboard-ui/scripts/moviegenres.js b/src/scripts/moviegenres.js similarity index 100% rename from dashboard-ui/scripts/moviegenres.js rename to src/scripts/moviegenres.js diff --git a/dashboard-ui/scripts/movies.js b/src/scripts/movies.js similarity index 100% rename from dashboard-ui/scripts/movies.js rename to src/scripts/movies.js diff --git a/dashboard-ui/scripts/moviesrecommended.js b/src/scripts/moviesrecommended.js similarity index 100% rename from dashboard-ui/scripts/moviesrecommended.js rename to src/scripts/moviesrecommended.js diff --git a/dashboard-ui/scripts/movietrailers.js b/src/scripts/movietrailers.js similarity index 100% rename from dashboard-ui/scripts/movietrailers.js rename to src/scripts/movietrailers.js diff --git a/dashboard-ui/scripts/musicalbums.js b/src/scripts/musicalbums.js similarity index 100% rename from dashboard-ui/scripts/musicalbums.js rename to src/scripts/musicalbums.js diff --git a/dashboard-ui/scripts/musicartists.js b/src/scripts/musicartists.js similarity index 100% rename from dashboard-ui/scripts/musicartists.js rename to src/scripts/musicartists.js diff --git a/dashboard-ui/scripts/musicgenres.js b/src/scripts/musicgenres.js similarity index 100% rename from dashboard-ui/scripts/musicgenres.js rename to src/scripts/musicgenres.js diff --git a/dashboard-ui/scripts/musicplaylists.js b/src/scripts/musicplaylists.js similarity index 100% rename from dashboard-ui/scripts/musicplaylists.js rename to src/scripts/musicplaylists.js diff --git a/dashboard-ui/scripts/musicrecommended.js b/src/scripts/musicrecommended.js similarity index 100% rename from dashboard-ui/scripts/musicrecommended.js rename to src/scripts/musicrecommended.js diff --git a/dashboard-ui/scripts/mypreferencescommon.js b/src/scripts/mypreferencescommon.js similarity index 100% rename from dashboard-ui/scripts/mypreferencescommon.js rename to src/scripts/mypreferencescommon.js diff --git a/dashboard-ui/scripts/mypreferencesdisplay.js b/src/scripts/mypreferencesdisplay.js similarity index 100% rename from dashboard-ui/scripts/mypreferencesdisplay.js rename to src/scripts/mypreferencesdisplay.js diff --git a/dashboard-ui/scripts/mypreferenceshome.js b/src/scripts/mypreferenceshome.js similarity index 100% rename from dashboard-ui/scripts/mypreferenceshome.js rename to src/scripts/mypreferenceshome.js diff --git a/dashboard-ui/scripts/mypreferenceslanguages.js b/src/scripts/mypreferenceslanguages.js similarity index 100% rename from dashboard-ui/scripts/mypreferenceslanguages.js rename to src/scripts/mypreferenceslanguages.js diff --git a/dashboard-ui/scripts/mypreferencessubtitles.js b/src/scripts/mypreferencessubtitles.js similarity index 100% rename from dashboard-ui/scripts/mypreferencessubtitles.js rename to src/scripts/mypreferencessubtitles.js diff --git a/dashboard-ui/scripts/myprofile.js b/src/scripts/myprofile.js similarity index 100% rename from dashboard-ui/scripts/myprofile.js rename to src/scripts/myprofile.js diff --git a/dashboard-ui/scripts/mysync.js b/src/scripts/mysync.js similarity index 100% rename from dashboard-ui/scripts/mysync.js rename to src/scripts/mysync.js diff --git a/dashboard-ui/scripts/mysyncsettings.js b/src/scripts/mysyncsettings.js similarity index 100% rename from dashboard-ui/scripts/mysyncsettings.js rename to src/scripts/mysyncsettings.js diff --git a/dashboard-ui/scripts/notificationsetting.js b/src/scripts/notificationsetting.js similarity index 100% rename from dashboard-ui/scripts/notificationsetting.js rename to src/scripts/notificationsetting.js diff --git a/dashboard-ui/scripts/notificationsettings.js b/src/scripts/notificationsettings.js similarity index 100% rename from dashboard-ui/scripts/notificationsettings.js rename to src/scripts/notificationsettings.js diff --git a/dashboard-ui/scripts/nowplayingpage.js b/src/scripts/nowplayingpage.js similarity index 100% rename from dashboard-ui/scripts/nowplayingpage.js rename to src/scripts/nowplayingpage.js diff --git a/dashboard-ui/scripts/playbackconfiguration.js b/src/scripts/playbackconfiguration.js similarity index 100% rename from dashboard-ui/scripts/playbackconfiguration.js rename to src/scripts/playbackconfiguration.js diff --git a/dashboard-ui/scripts/playlistedit.js b/src/scripts/playlistedit.js similarity index 100% rename from dashboard-ui/scripts/playlistedit.js rename to src/scripts/playlistedit.js diff --git a/dashboard-ui/scripts/playlists.js b/src/scripts/playlists.js similarity index 100% rename from dashboard-ui/scripts/playlists.js rename to src/scripts/playlists.js diff --git a/dashboard-ui/scripts/plugincatalogpage.js b/src/scripts/plugincatalogpage.js similarity index 100% rename from dashboard-ui/scripts/plugincatalogpage.js rename to src/scripts/plugincatalogpage.js diff --git a/dashboard-ui/scripts/pluginspage.js b/src/scripts/pluginspage.js similarity index 100% rename from dashboard-ui/scripts/pluginspage.js rename to src/scripts/pluginspage.js diff --git a/dashboard-ui/scripts/scheduledtaskpage.js b/src/scripts/scheduledtaskpage.js similarity index 100% rename from dashboard-ui/scripts/scheduledtaskpage.js rename to src/scripts/scheduledtaskpage.js diff --git a/dashboard-ui/scripts/scheduledtaskspage.js b/src/scripts/scheduledtaskspage.js similarity index 100% rename from dashboard-ui/scripts/scheduledtaskspage.js rename to src/scripts/scheduledtaskspage.js diff --git a/dashboard-ui/scripts/searchpage.js b/src/scripts/searchpage.js similarity index 100% rename from dashboard-ui/scripts/searchpage.js rename to src/scripts/searchpage.js diff --git a/dashboard-ui/scripts/searchtab.js b/src/scripts/searchtab.js similarity index 100% rename from dashboard-ui/scripts/searchtab.js rename to src/scripts/searchtab.js diff --git a/dashboard-ui/scripts/selectserver.js b/src/scripts/selectserver.js similarity index 100% rename from dashboard-ui/scripts/selectserver.js rename to src/scripts/selectserver.js diff --git a/dashboard-ui/scripts/serversecurity.js b/src/scripts/serversecurity.js similarity index 100% rename from dashboard-ui/scripts/serversecurity.js rename to src/scripts/serversecurity.js diff --git a/dashboard-ui/scripts/site.js b/src/scripts/site.js similarity index 100% rename from dashboard-ui/scripts/site.js rename to src/scripts/site.js diff --git a/dashboard-ui/scripts/songs.js b/src/scripts/songs.js similarity index 100% rename from dashboard-ui/scripts/songs.js rename to src/scripts/songs.js diff --git a/dashboard-ui/scripts/streamingsettings.js b/src/scripts/streamingsettings.js similarity index 100% rename from dashboard-ui/scripts/streamingsettings.js rename to src/scripts/streamingsettings.js diff --git a/dashboard-ui/scripts/syncactivity.js b/src/scripts/syncactivity.js similarity index 100% rename from dashboard-ui/scripts/syncactivity.js rename to src/scripts/syncactivity.js diff --git a/dashboard-ui/scripts/syncsettings.js b/src/scripts/syncsettings.js similarity index 100% rename from dashboard-ui/scripts/syncsettings.js rename to src/scripts/syncsettings.js diff --git a/dashboard-ui/scripts/taskbutton.js b/src/scripts/taskbutton.js similarity index 100% rename from dashboard-ui/scripts/taskbutton.js rename to src/scripts/taskbutton.js diff --git a/dashboard-ui/scripts/themeloader.js b/src/scripts/themeloader.js similarity index 100% rename from dashboard-ui/scripts/themeloader.js rename to src/scripts/themeloader.js diff --git a/dashboard-ui/scripts/tvgenres.js b/src/scripts/tvgenres.js similarity index 100% rename from dashboard-ui/scripts/tvgenres.js rename to src/scripts/tvgenres.js diff --git a/dashboard-ui/scripts/tvlatest.js b/src/scripts/tvlatest.js similarity index 100% rename from dashboard-ui/scripts/tvlatest.js rename to src/scripts/tvlatest.js diff --git a/dashboard-ui/scripts/tvrecommended.js b/src/scripts/tvrecommended.js similarity index 100% rename from dashboard-ui/scripts/tvrecommended.js rename to src/scripts/tvrecommended.js diff --git a/dashboard-ui/scripts/tvshows.js b/src/scripts/tvshows.js similarity index 100% rename from dashboard-ui/scripts/tvshows.js rename to src/scripts/tvshows.js diff --git a/dashboard-ui/scripts/tvstudios.js b/src/scripts/tvstudios.js similarity index 100% rename from dashboard-ui/scripts/tvstudios.js rename to src/scripts/tvstudios.js diff --git a/dashboard-ui/scripts/tvupcoming.js b/src/scripts/tvupcoming.js similarity index 100% rename from dashboard-ui/scripts/tvupcoming.js rename to src/scripts/tvupcoming.js diff --git a/dashboard-ui/scripts/useredit.js b/src/scripts/useredit.js similarity index 100% rename from dashboard-ui/scripts/useredit.js rename to src/scripts/useredit.js diff --git a/dashboard-ui/scripts/userlibraryaccess.js b/src/scripts/userlibraryaccess.js similarity index 100% rename from dashboard-ui/scripts/userlibraryaccess.js rename to src/scripts/userlibraryaccess.js diff --git a/dashboard-ui/scripts/usernew.js b/src/scripts/usernew.js similarity index 100% rename from dashboard-ui/scripts/usernew.js rename to src/scripts/usernew.js diff --git a/dashboard-ui/scripts/userparentalcontrol.js b/src/scripts/userparentalcontrol.js similarity index 100% rename from dashboard-ui/scripts/userparentalcontrol.js rename to src/scripts/userparentalcontrol.js diff --git a/dashboard-ui/scripts/userpassword.js b/src/scripts/userpassword.js similarity index 100% rename from dashboard-ui/scripts/userpassword.js rename to src/scripts/userpassword.js diff --git a/dashboard-ui/scripts/userpasswordpage.js b/src/scripts/userpasswordpage.js similarity index 100% rename from dashboard-ui/scripts/userpasswordpage.js rename to src/scripts/userpasswordpage.js diff --git a/dashboard-ui/scripts/userprofilespage.js b/src/scripts/userprofilespage.js similarity index 100% rename from dashboard-ui/scripts/userprofilespage.js rename to src/scripts/userprofilespage.js diff --git a/dashboard-ui/scripts/videoosd.js b/src/scripts/videoosd.js similarity index 100% rename from dashboard-ui/scripts/videoosd.js rename to src/scripts/videoosd.js diff --git a/dashboard-ui/scripts/wizardagreement.js b/src/scripts/wizardagreement.js similarity index 100% rename from dashboard-ui/scripts/wizardagreement.js rename to src/scripts/wizardagreement.js diff --git a/dashboard-ui/scripts/wizarduserpage.js b/src/scripts/wizarduserpage.js similarity index 100% rename from dashboard-ui/scripts/wizarduserpage.js rename to src/scripts/wizarduserpage.js diff --git a/dashboard-ui/search.html b/src/search.html similarity index 100% rename from dashboard-ui/search.html rename to src/search.html diff --git a/dashboard-ui/selectserver.html b/src/selectserver.html similarity index 100% rename from dashboard-ui/selectserver.html rename to src/selectserver.html diff --git a/dashboard-ui/serveractivity.html b/src/serveractivity.html similarity index 100% rename from dashboard-ui/serveractivity.html rename to src/serveractivity.html diff --git a/dashboard-ui/serversecurity.html b/src/serversecurity.html similarity index 100% rename from dashboard-ui/serversecurity.html rename to src/serversecurity.html diff --git a/dashboard-ui/serviceworker.js b/src/serviceworker.js similarity index 100% rename from dashboard-ui/serviceworker.js rename to src/serviceworker.js diff --git a/dashboard-ui/streamingsettings.html b/src/streamingsettings.html similarity index 100% rename from dashboard-ui/streamingsettings.html rename to src/streamingsettings.html diff --git a/dashboard-ui/strings/ar.json b/src/strings/ar.json similarity index 100% rename from dashboard-ui/strings/ar.json rename to src/strings/ar.json diff --git a/dashboard-ui/strings/be-BY.json b/src/strings/be-BY.json similarity index 100% rename from dashboard-ui/strings/be-BY.json rename to src/strings/be-BY.json diff --git a/dashboard-ui/strings/bg-BG.json b/src/strings/bg-BG.json similarity index 100% rename from dashboard-ui/strings/bg-BG.json rename to src/strings/bg-BG.json diff --git a/dashboard-ui/strings/ca.json b/src/strings/ca.json similarity index 100% rename from dashboard-ui/strings/ca.json rename to src/strings/ca.json diff --git a/dashboard-ui/strings/cs.json b/src/strings/cs.json similarity index 100% rename from dashboard-ui/strings/cs.json rename to src/strings/cs.json diff --git a/dashboard-ui/strings/da.json b/src/strings/da.json similarity index 100% rename from dashboard-ui/strings/da.json rename to src/strings/da.json diff --git a/dashboard-ui/strings/de.json b/src/strings/de.json similarity index 100% rename from dashboard-ui/strings/de.json rename to src/strings/de.json diff --git a/dashboard-ui/strings/el.json b/src/strings/el.json similarity index 100% rename from dashboard-ui/strings/el.json rename to src/strings/el.json diff --git a/dashboard-ui/strings/en-GB.json b/src/strings/en-GB.json similarity index 100% rename from dashboard-ui/strings/en-GB.json rename to src/strings/en-GB.json diff --git a/dashboard-ui/strings/en-US.json b/src/strings/en-US.json similarity index 100% rename from dashboard-ui/strings/en-US.json rename to src/strings/en-US.json diff --git a/dashboard-ui/strings/es-AR.json b/src/strings/es-AR.json similarity index 100% rename from dashboard-ui/strings/es-AR.json rename to src/strings/es-AR.json diff --git a/dashboard-ui/strings/es-MX.json b/src/strings/es-MX.json similarity index 100% rename from dashboard-ui/strings/es-MX.json rename to src/strings/es-MX.json diff --git a/dashboard-ui/strings/es.json b/src/strings/es.json similarity index 100% rename from dashboard-ui/strings/es.json rename to src/strings/es.json diff --git a/dashboard-ui/strings/fa.json b/src/strings/fa.json similarity index 100% rename from dashboard-ui/strings/fa.json rename to src/strings/fa.json diff --git a/dashboard-ui/strings/fi.json b/src/strings/fi.json similarity index 100% rename from dashboard-ui/strings/fi.json rename to src/strings/fi.json diff --git a/dashboard-ui/strings/fr-CA.json b/src/strings/fr-CA.json similarity index 100% rename from dashboard-ui/strings/fr-CA.json rename to src/strings/fr-CA.json diff --git a/dashboard-ui/strings/fr.json b/src/strings/fr.json similarity index 100% rename from dashboard-ui/strings/fr.json rename to src/strings/fr.json diff --git a/dashboard-ui/strings/gsw.json b/src/strings/gsw.json similarity index 100% rename from dashboard-ui/strings/gsw.json rename to src/strings/gsw.json diff --git a/dashboard-ui/strings/he.json b/src/strings/he.json similarity index 100% rename from dashboard-ui/strings/he.json rename to src/strings/he.json diff --git a/dashboard-ui/strings/hi-IN.json b/src/strings/hi-IN.json similarity index 100% rename from dashboard-ui/strings/hi-IN.json rename to src/strings/hi-IN.json diff --git a/dashboard-ui/strings/hr.json b/src/strings/hr.json similarity index 100% rename from dashboard-ui/strings/hr.json rename to src/strings/hr.json diff --git a/dashboard-ui/strings/hu.json b/src/strings/hu.json similarity index 100% rename from dashboard-ui/strings/hu.json rename to src/strings/hu.json diff --git a/dashboard-ui/strings/id.json b/src/strings/id.json similarity index 100% rename from dashboard-ui/strings/id.json rename to src/strings/id.json diff --git a/dashboard-ui/strings/is-IS.json b/src/strings/is-IS.json similarity index 100% rename from dashboard-ui/strings/is-IS.json rename to src/strings/is-IS.json diff --git a/dashboard-ui/strings/it.json b/src/strings/it.json similarity index 100% rename from dashboard-ui/strings/it.json rename to src/strings/it.json diff --git a/dashboard-ui/strings/kk.json b/src/strings/kk.json similarity index 100% rename from dashboard-ui/strings/kk.json rename to src/strings/kk.json diff --git a/dashboard-ui/strings/ko.json b/src/strings/ko.json similarity index 100% rename from dashboard-ui/strings/ko.json rename to src/strings/ko.json diff --git a/dashboard-ui/strings/lt-LT.json b/src/strings/lt-LT.json similarity index 100% rename from dashboard-ui/strings/lt-LT.json rename to src/strings/lt-LT.json diff --git a/dashboard-ui/strings/ms.json b/src/strings/ms.json similarity index 100% rename from dashboard-ui/strings/ms.json rename to src/strings/ms.json diff --git a/dashboard-ui/strings/nb.json b/src/strings/nb.json similarity index 100% rename from dashboard-ui/strings/nb.json rename to src/strings/nb.json diff --git a/dashboard-ui/strings/nl.json b/src/strings/nl.json similarity index 100% rename from dashboard-ui/strings/nl.json rename to src/strings/nl.json diff --git a/dashboard-ui/strings/no.json b/src/strings/no.json similarity index 100% rename from dashboard-ui/strings/no.json rename to src/strings/no.json diff --git a/dashboard-ui/strings/pl.json b/src/strings/pl.json similarity index 100% rename from dashboard-ui/strings/pl.json rename to src/strings/pl.json diff --git a/dashboard-ui/strings/pt-BR.json b/src/strings/pt-BR.json similarity index 100% rename from dashboard-ui/strings/pt-BR.json rename to src/strings/pt-BR.json diff --git a/dashboard-ui/strings/pt-PT.json b/src/strings/pt-PT.json similarity index 100% rename from dashboard-ui/strings/pt-PT.json rename to src/strings/pt-PT.json diff --git a/dashboard-ui/strings/ro.json b/src/strings/ro.json similarity index 100% rename from dashboard-ui/strings/ro.json rename to src/strings/ro.json diff --git a/dashboard-ui/strings/ru.json b/src/strings/ru.json similarity index 100% rename from dashboard-ui/strings/ru.json rename to src/strings/ru.json diff --git a/dashboard-ui/strings/sk.json b/src/strings/sk.json similarity index 100% rename from dashboard-ui/strings/sk.json rename to src/strings/sk.json diff --git a/dashboard-ui/strings/sl-SI.json b/src/strings/sl-SI.json similarity index 100% rename from dashboard-ui/strings/sl-SI.json rename to src/strings/sl-SI.json diff --git a/dashboard-ui/strings/sv.json b/src/strings/sv.json similarity index 100% rename from dashboard-ui/strings/sv.json rename to src/strings/sv.json diff --git a/dashboard-ui/strings/tr.json b/src/strings/tr.json similarity index 100% rename from dashboard-ui/strings/tr.json rename to src/strings/tr.json diff --git a/dashboard-ui/strings/uk.json b/src/strings/uk.json similarity index 100% rename from dashboard-ui/strings/uk.json rename to src/strings/uk.json diff --git a/dashboard-ui/strings/vi.json b/src/strings/vi.json similarity index 100% rename from dashboard-ui/strings/vi.json rename to src/strings/vi.json diff --git a/dashboard-ui/strings/zh-CN.json b/src/strings/zh-CN.json similarity index 100% rename from dashboard-ui/strings/zh-CN.json rename to src/strings/zh-CN.json diff --git a/dashboard-ui/strings/zh-HK.json b/src/strings/zh-HK.json similarity index 100% rename from dashboard-ui/strings/zh-HK.json rename to src/strings/zh-HK.json diff --git a/dashboard-ui/strings/zh-TW.json b/src/strings/zh-TW.json similarity index 100% rename from dashboard-ui/strings/zh-TW.json rename to src/strings/zh-TW.json diff --git a/dashboard-ui/syncactivity.html b/src/syncactivity.html similarity index 100% rename from dashboard-ui/syncactivity.html rename to src/syncactivity.html diff --git a/dashboard-ui/syncsettings.html b/src/syncsettings.html similarity index 100% rename from dashboard-ui/syncsettings.html rename to src/syncsettings.html diff --git a/dashboard-ui/thirdparty/jstree/jstree.js b/src/thirdparty/jstree/jstree.js similarity index 100% rename from dashboard-ui/thirdparty/jstree/jstree.js rename to src/thirdparty/jstree/jstree.js diff --git a/dashboard-ui/thirdparty/jstree/themes/default/32px.png b/src/thirdparty/jstree/themes/default/32px.png similarity index 100% rename from dashboard-ui/thirdparty/jstree/themes/default/32px.png rename to src/thirdparty/jstree/themes/default/32px.png diff --git a/dashboard-ui/thirdparty/jstree/themes/default/style.css b/src/thirdparty/jstree/themes/default/style.css similarity index 100% rename from dashboard-ui/thirdparty/jstree/themes/default/style.css rename to src/thirdparty/jstree/themes/default/style.css diff --git a/dashboard-ui/thirdparty/jstree/themes/default/throbber.gif b/src/thirdparty/jstree/themes/default/throbber.gif similarity index 100% rename from dashboard-ui/thirdparty/jstree/themes/default/throbber.gif rename to src/thirdparty/jstree/themes/default/throbber.gif diff --git a/dashboard-ui/touchicon.png b/src/touchicon.png similarity index 100% rename from dashboard-ui/touchicon.png rename to src/touchicon.png diff --git a/dashboard-ui/touchicon114.png b/src/touchicon114.png similarity index 100% rename from dashboard-ui/touchicon114.png rename to src/touchicon114.png diff --git a/dashboard-ui/touchicon144.png b/src/touchicon144.png similarity index 100% rename from dashboard-ui/touchicon144.png rename to src/touchicon144.png diff --git a/dashboard-ui/touchicon72.png b/src/touchicon72.png similarity index 100% rename from dashboard-ui/touchicon72.png rename to src/touchicon72.png diff --git a/dashboard-ui/tv.html b/src/tv.html similarity index 100% rename from dashboard-ui/tv.html rename to src/tv.html diff --git a/dashboard-ui/useredit.html b/src/useredit.html similarity index 100% rename from dashboard-ui/useredit.html rename to src/useredit.html diff --git a/dashboard-ui/userlibraryaccess.html b/src/userlibraryaccess.html similarity index 100% rename from dashboard-ui/userlibraryaccess.html rename to src/userlibraryaccess.html diff --git a/dashboard-ui/usernew.html b/src/usernew.html similarity index 100% rename from dashboard-ui/usernew.html rename to src/usernew.html diff --git a/dashboard-ui/userparentalcontrol.html b/src/userparentalcontrol.html similarity index 100% rename from dashboard-ui/userparentalcontrol.html rename to src/userparentalcontrol.html diff --git a/dashboard-ui/userpassword.html b/src/userpassword.html similarity index 100% rename from dashboard-ui/userpassword.html rename to src/userpassword.html diff --git a/dashboard-ui/userprofiles.html b/src/userprofiles.html similarity index 100% rename from dashboard-ui/userprofiles.html rename to src/userprofiles.html diff --git a/dashboard-ui/videoosd.html b/src/videoosd.html similarity index 100% rename from dashboard-ui/videoosd.html rename to src/videoosd.html diff --git a/dashboard-ui/wizardfinish.html b/src/wizardfinish.html similarity index 100% rename from dashboard-ui/wizardfinish.html rename to src/wizardfinish.html diff --git a/dashboard-ui/wizardlibrary.html b/src/wizardlibrary.html similarity index 100% rename from dashboard-ui/wizardlibrary.html rename to src/wizardlibrary.html diff --git a/dashboard-ui/wizardremoteaccess.html b/src/wizardremoteaccess.html similarity index 100% rename from dashboard-ui/wizardremoteaccess.html rename to src/wizardremoteaccess.html diff --git a/dashboard-ui/wizardsettings.html b/src/wizardsettings.html similarity index 100% rename from dashboard-ui/wizardsettings.html rename to src/wizardsettings.html diff --git a/dashboard-ui/wizardstart.html b/src/wizardstart.html similarity index 100% rename from dashboard-ui/wizardstart.html rename to src/wizardstart.html diff --git a/dashboard-ui/wizarduser.html b/src/wizarduser.html similarity index 100% rename from dashboard-ui/wizarduser.html rename to src/wizarduser.html