@@ -814,42 +814,45 @@ function renderNextUp(page, item, user) {
814814}
815815
816816function setInitialCollapsibleState ( page , item , apiClient , context , user ) {
817- page . querySelector ( '.collectionItems' ) . innerHTML = '' ;
817+ const collectionItems = page . querySelector ( '.collectionItems' ) ;
818+ if ( collectionItems ) {
819+ collectionItems . innerHTML = '' ;
820+ }
818821
819822 if ( item . Type == 'Playlist' ) {
820- page . querySelector ( '#listChildrenCollapsible' ) . classList . remove ( 'hide' ) ;
821- page . querySelector ( '#childrenCollapsible' ) . classList . add ( 'hide' ) ;
823+ page . querySelector ( '#listChildrenCollapsible' ) ? .classList . remove ( 'hide' ) ;
824+ page . querySelector ( '#childrenCollapsible' ) ? .classList . add ( 'hide' ) ;
822825 renderPlaylistItems ( page , item ) ;
823826 } else if ( item . Type == 'Studio' || item . Type == 'Person' || item . Type == 'Genre' || item . Type == 'MusicGenre' || item . Type == 'MusicArtist' ) {
824- page . querySelector ( '#listChildrenCollapsible' ) . classList . remove ( 'hide' ) ;
825- page . querySelector ( '#childrenCollapsible' ) . classList . add ( 'hide' ) ;
827+ page . querySelector ( '#listChildrenCollapsible' ) ? .classList . remove ( 'hide' ) ;
828+ page . querySelector ( '#childrenCollapsible' ) ? .classList . add ( 'hide' ) ;
826829 renderItemsByName ( page , item ) ;
827830 } else if ( item . IsFolder ) {
828831 if ( item . Type == 'BoxSet' ) {
829- page . querySelector ( '#listChildrenCollapsible' ) . classList . add ( 'hide' ) ;
830- page . querySelector ( '#childrenCollapsible' ) . classList . add ( 'hide' ) ;
832+ page . querySelector ( '#listChildrenCollapsible' ) ? .classList . add ( 'hide' ) ;
833+ page . querySelector ( '#childrenCollapsible' ) ? .classList . add ( 'hide' ) ;
831834 }
832835
833836 renderChildren ( page , item ) ;
834837 } else {
835- page . querySelector ( '#listChildrenCollapsible' ) . classList . add ( 'hide' ) ;
836- page . querySelector ( '#childrenCollapsible' ) . classList . add ( 'hide' ) ;
838+ page . querySelector ( '#listChildrenCollapsible' ) ? .classList . add ( 'hide' ) ;
839+ page . querySelector ( '#childrenCollapsible' ) ? .classList . add ( 'hide' ) ;
837840 }
838841
839842 if ( item . Type == 'Series' ) {
840843 renderSeriesSchedule ( page , item ) ;
841844 renderNextUp ( page , item , user ) ;
842845 } else {
843- page . querySelector ( '.nextUpSection' ) . classList . add ( 'hide' ) ;
846+ page . querySelector ( '.nextUpSection' ) ? .classList . add ( 'hide' ) ;
844847 }
845848
846849 renderScenes ( page , item ) ;
847850
848851 if ( item . SpecialFeatureCount > 0 ) {
849- page . querySelector ( '#specialsCollapsible' ) . classList . remove ( 'hide' ) ;
852+ page . querySelector ( '#specialsCollapsible' ) ? .classList . remove ( 'hide' ) ;
850853 renderSpecials ( page , item , user ) ;
851854 } else {
852- page . querySelector ( '#specialsCollapsible' ) . classList . add ( 'hide' ) ;
855+ page . querySelector ( '#specialsCollapsible' ) ? .classList . add ( 'hide' ) ;
853856 }
854857
855858 const cast = [ ] ;
@@ -866,16 +869,16 @@ function setInitialCollapsibleState(page, item, apiClient, context, user) {
866869 renderGuestCast ( page , item , guestCast ) ;
867870
868871 if ( item . PartCount && item . PartCount > 1 ) {
869- page . querySelector ( '#additionalPartsCollapsible' ) . classList . remove ( 'hide' ) ;
872+ page . querySelector ( '#additionalPartsCollapsible' ) ? .classList . remove ( 'hide' ) ;
870873 renderAdditionalParts ( page , item , user ) ;
871874 } else {
872- page . querySelector ( '#additionalPartsCollapsible' ) . classList . add ( 'hide' ) ;
875+ page . querySelector ( '#additionalPartsCollapsible' ) ? .classList . add ( 'hide' ) ;
873876 }
874877
875878 if ( item . Type == BaseItemKind . MusicAlbum ) {
876879 renderMusicVideos ( page , item , user ) ;
877880 } else {
878- page . querySelector ( '#musicVideosCollapsible' ) . classList . add ( 'hide' ) ;
881+ page . querySelector ( '#musicVideosCollapsible' ) ? .classList . add ( 'hide' ) ;
879882 }
880883}
881884
@@ -1703,8 +1706,12 @@ function canPlaySomeItemInCollection(items) {
17031706}
17041707
17051708function renderCollectionItems ( page , parentItem , types , items ) {
1706- page . querySelector ( '.collectionItems' ) . classList . remove ( 'hide' ) ;
1707- page . querySelector ( '.collectionItems' ) . innerHTML = '' ;
1709+ const collectionItems = page . querySelector ( '.collectionItems' ) ;
1710+ if ( ! collectionItems ) {
1711+ return ;
1712+ }
1713+ collectionItems . classList . remove ( 'hide' ) ;
1714+ collectionItems . innerHTML = '' ;
17081715
17091716 if ( ! items . length ) {
17101717 renderCollectionItemType ( page , parentItem , {
@@ -1777,8 +1784,10 @@ function renderCollectionItemType(page, parentItem, type, items) {
17771784 html += '</div>' ;
17781785 html += '</div>' ;
17791786 const collectionItems = page . querySelector ( '.collectionItems' ) ;
1780- collectionItems . insertAdjacentHTML ( 'beforeend' , html ) ;
1781- imageLoader . lazyChildren ( collectionItems . lastChild ) ;
1787+ if ( collectionItems ) {
1788+ collectionItems . insertAdjacentHTML ( 'beforeend' , html ) ;
1789+ imageLoader . lazyChildren ( collectionItems . lastChild ) ;
1790+ }
17821791}
17831792
17841793function renderMusicVideos ( page , item , user ) {
0 commit comments