Merge branch 'develop' of github.com:jaedb/Iris into develop

This commit is contained in:
James Barnsley
2025-05-03 21:08:55 +12:00
4 changed files with 34 additions and 7 deletions

View File

@ -26,11 +26,13 @@ const SearchResults = ({
const encodedTerm = encodeURIComponent(term); const encodedTerm = encodeURIComponent(term);
let results = [...rawResults]; let results = [...rawResults];
results = sortItems( if (sortField) {
results, results = sortItems(
(type === 'tracks' && sortField === 'followers' ? 'popularity' : sortField), results,
sortReverse, (type === 'tracks' && sortField === 'followers' ? 'popularity' : sortField),
); sortReverse,
);
}
const resultsCount = results.length; const resultsCount = results.length;
if (all && type !== 'tracks' && results.length > 5) { if (all && type !== 'tracks' && results.length > 5) {

View File

@ -140,8 +140,10 @@ const uriType = function (uri) {
if (!uri) return ''; if (!uri) return '';
const exploded = `${uri}`.split(':'); const exploded = `${uri}`.split(':');
const is_playlist_uri = exploded.length >= 1 && exploded[1] === 'playlist'
if (exploded[0] === 'm3u') { // The following covers m3u, webm3u, subidy:playlist URI schemes.
if (exploded[0].endsWith('m3u') || is_playlist_uri) {
return 'playlist'; return 'playlist';
} }
@ -193,8 +195,10 @@ const sourceIcon = function (uri, source = null) {
if (uri) source = uriSource(uri); if (uri) source = uriSource(uri);
switch (source) { switch (source) {
case 'local': case 'local':
case 'm3u':
case 'file': case 'file':
case 'm3u':
case 'webm3u':
case 'subidy':
return 'folder'; return 'folder';
case 'gmusic': case 'gmusic':

View File

@ -107,6 +107,16 @@ const providers = {
uri: 'm3u:playlists', uri: 'm3u:playlists',
title: i18n('services.mopidy.local'), title: i18n('services.mopidy.local'),
}, },
{
scheme: 'webm3u:',
uri: 'webm3u:playlists',
title: i18n('services.webm3u.title'),
},
{
scheme: 'subidy:',
uri: 'subidy:playlists',
title: i18n('services.subidy.title'),
},
{ {
scheme: 'spotify:', scheme: 'spotify:',
uri: 'spotify:library:playlists', uri: 'spotify:library:playlists',
@ -134,6 +144,11 @@ const providers = {
setting_name: 'library_albums_uri', setting_name: 'library_albums_uri',
title: i18n('services.mopidy.local'), title: i18n('services.mopidy.local'),
}, },
{
scheme: 'subidy:',
uri: 'subidy:vdir:albums',
title: i18n('services.subidy.title'),
},
{ {
scheme: 'gmusic:', scheme: 'gmusic:',
uri: 'gmusic:album', uri: 'gmusic:album',
@ -166,6 +181,11 @@ const providers = {
setting_name: 'library_artists_uri', setting_name: 'library_artists_uri',
title: i18n('services.mopidy.local'), title: i18n('services.mopidy.local'),
}, },
{
scheme: 'subidy:',
uri: 'subidy:vdir:artists',
title: i18n('services.subidy.title'),
},
{ {
scheme: 'gmusic:', scheme: 'gmusic:',
uri: 'gmusic:artist', uri: 'gmusic:artist',

View File

@ -70,6 +70,7 @@ const Search = () => {
} }
const sortOptions = [ const sortOptions = [
{ value: null, label: i18n('fields.filters.as_loaded') },
{ value: 'name', label: i18n('common.name') }, { value: 'name', label: i18n('common.name') },
{ value: 'uri', label: i18n('fields.filters.source') }, { value: 'uri', label: i18n('fields.filters.source') },
{ value: 'followers', label: i18n('common.popularity') }, { value: 'followers', label: i18n('common.popularity') },