@@ -123,51 +123,37 @@ export const ShabadText = ({
123123 changeHomeVerse ( verseIndex , { paneAttributes, setPaneAttributes } ) ;
124124 } ;
125125
126+ const setVerseList = ( verseList ) => {
127+ if ( verseList . length ) {
128+ setRawVerses ( verseList ) ;
129+ saveToHistory (
130+ shabadId ,
131+ verseList ,
132+ baniType ,
133+ { verseHistory, setVerseHistory, baniLength } ,
134+ initialVerseId ,
135+ ) ;
136+ const filtered = filterRequiredVerseItems ( verseList ) ;
137+ setFilteredItems ( filtered ) ;
138+ const resumeVerseId = paneAttributes ?. activeVerse || filtered [ 0 ] . verseId ;
139+ if ( filtered . length > 0 ) {
140+ const resumeVerseIndex = filtered . findIndex ( ( v ) => v . verseId === resumeVerseId ) ;
141+ if ( resumeVerseIndex >= 0 ) {
142+ updateTraversedVerse ( resumeVerseId , resumeVerseIndex ) ;
143+ } else {
144+ updateTraversedVerse ( filtered [ 0 ] . verseId , 0 ) ;
145+ }
146+ }
147+ }
148+ } ;
149+
126150 useEffect ( ( ) => {
127151 if ( baniType === 'shabad' ) {
128- loadShabad ( shabadId ) . then ( ( verseList ) => {
129- if ( verseList . length ) {
130- setRawVerses ( verseList ) ;
131- saveToHistory (
132- shabadId ,
133- verseList ,
134- baniType ,
135- { verseHistory, setVerseHistory, baniLength } ,
136- initialVerseId ,
137- ) ;
138- setFilteredItems ( filterRequiredVerseItems ( verseList ) ) ;
139- }
140- } ) ;
152+ loadShabad ( shabadId ) . then ( setVerseList ) ;
141153 } else if ( baniType === 'bani' ) {
142- loadBani ( shabadId , baniLengthCols [ baniLength ] ) . then ( ( verseList ) => {
143- if ( verseList . length ) {
144- setRawVerses ( verseList ) ;
145- saveToHistory (
146- shabadId ,
147- verseList ,
148- baniType ,
149- { verseHistory, setVerseHistory, baniLength } ,
150- initialVerseId ,
151- ) ;
152- setFilteredItems ( filterRequiredVerseItems ( verseList ) ) ;
153- updateTraversedVerse ( verseList [ 0 ] . ID , 0 ) ;
154- }
155- } ) ;
154+ loadBani ( shabadId , baniLengthCols [ baniLength ] ) . then ( setVerseList ) ;
156155 } else if ( baniType === 'ceremony' ) {
157- loadCeremony ( shabadId ) . then ( ( verseList ) => {
158- if ( verseList . length ) {
159- setRawVerses ( verseList ) ;
160- saveToHistory (
161- shabadId ,
162- verseList ,
163- baniType ,
164- { verseHistory, setVerseHistory, baniLength } ,
165- initialVerseId ,
166- ) ;
167- setFilteredItems ( filterRequiredVerseItems ( verseList ) ) ;
168- updateTraversedVerse ( verseList [ 0 ] . ID , 0 ) ;
169- }
170- } ) ;
156+ loadCeremony ( shabadId ) . then ( setVerseList ) ;
171157 }
172158 } , [ shabadId , baniType , baniLength ] ) ;
173159
0 commit comments