@@ -22,6 +22,7 @@ import mediaInfo from 'components/mediainfo/mediainfo';
2222import layoutManager from 'components/layoutManager' ;
2323import listView from 'components/listview/listview' ;
2424import loading from 'components/loading/loading' ;
25+ import ItemDetailsChapterList from 'components/itemDetails/ItemDetailsChapterList' ;
2526import ItemDetailsMetadataList from 'components/itemDetails/ItemDetailsMetadataList' ;
2627import { playbackManager } from 'components/playback/playbackmanager' ;
2728import { appRouter } from 'components/router/appRouter' ;
@@ -577,7 +578,7 @@ function reloadFromItem(instance, page, params, item, user) {
577578
578579 renderSeriesTimerEditor ( page , item , apiClient , user ) ;
579580 renderTimerEditor ( page , item , apiClient , user ) ;
580- setInitialCollapsibleState ( page , item , apiClient , params . context , user ) ;
581+ setInitialCollapsibleState ( page , instance , item , apiClient , params . context , user ) ;
581582 const canPlay = reloadPlayButtons ( page , item ) ;
582583
583584 setTrailerButtonVisibility ( page , item ) ;
@@ -818,7 +819,7 @@ function renderNextUp(page, item, user) {
818819 } ) ;
819820}
820821
821- function setInitialCollapsibleState ( page , item , apiClient , context , user ) {
822+ function setInitialCollapsibleState ( page , instance , item , apiClient , context , user ) {
822823 page . querySelector ( '.collectionItems' ) . innerHTML = '' ;
823824
824825 if ( item . Type == 'Playlist' ) {
@@ -848,6 +849,7 @@ function setInitialCollapsibleState(page, item, apiClient, context, user) {
848849 page . querySelector ( '.nextUpSection' ) . classList . add ( 'hide' ) ;
849850 }
850851
852+ renderChapters ( page , instance , item ) ;
851853 renderScenes ( page , item ) ;
852854
853855 if ( item . SpecialFeatureCount > 0 ) {
@@ -1782,6 +1784,17 @@ function renderAdditionalParts(page, item, user) {
17821784 } ) ;
17831785}
17841786
1787+ function renderChapters ( page , instance , item ) {
1788+ if ( item . Type !== BaseItemKind . AudioBook || ! item . Chapters ?. length ) return ;
1789+
1790+ const container = page . querySelector ( '#childrenCollapsible' ) ;
1791+ const element = container . querySelector ( '.itemsContainer' ) ;
1792+
1793+ instance . _unmount . push ( renderComponent ( ItemDetailsChapterList , { item } , element ) ) ;
1794+ container . classList . remove ( 'hide' ) ;
1795+ element . classList . add ( 'vertical-list' ) ;
1796+ }
1797+
17851798function renderScenes ( page , item ) {
17861799 let chapters = item . Chapters || [ ] ;
17871800
0 commit comments