@@ -143,8 +143,8 @@ class CoCreateServerSideRender {
143143 let dom = parse ( file . src ) ;
144144 dom = await render ( dom , "root" ) ;
145145 if ( file . langRegion || file . lang ) {
146- dom = translate ( dom , file ) ;
147- let langLinkTags = createLanguageLinkTags ( file ) ;
146+ dom = await this . translate ( dom , file ) ;
147+ let langLinkTags = this . createLanguageLinkTags ( file ) ;
148148 const head = dom . querySelector ( "head" ) ;
149149 if ( head && langLinkTags ) {
150150 const linksFragment = parse (
@@ -202,29 +202,32 @@ class CoCreateServerSideRender {
202202 async translate ( dom , file ) {
203203 let langRegion = file . langRegion ;
204204 let lang = file . lang ;
205- if ( file . translations & ( langRegion || lang ) ) {
205+ if ( file . translations && ( langRegion || lang ) ) {
206206 for ( let translation of file . translations ) {
207- let el = dom . querySelectorAll ( translation . selector ) ;
208- if ( translation . innerHTML ) {
209- let content =
210- translation . innerHTML [ langRegion ] ||
211- translation . innerHTML [ lang ] ;
212- if ( content ) {
213- el . innerHTML = content ;
207+ let elements = dom . querySelectorAll ( translation . selector ) ;
208+ for ( let el of elements ) {
209+ if ( translation . innerHTML ) {
210+ let content =
211+ translation . innerHTML [ langRegion ] ||
212+ translation . innerHTML [ lang ] ;
213+ if ( content ) {
214+ el . innerHTML = content ;
215+ }
214216 }
215- }
216- if ( translation . attributes ) {
217- for ( let [ key , language ] of Object . entries (
218- translation . attributes
219- ) ) {
220- let value = language [ langRegion ] || language [ lang ] ;
221- if ( value ) {
222- el . setAttribute ( key , value ) ;
217+ if ( translation . attributes ) {
218+ for ( let [ key , language ] of Object . entries (
219+ translation . attributes
220+ ) ) {
221+ let value = language [ langRegion ] || language [ lang ] ;
222+ if ( value ) {
223+ el . setAttribute ( key , value ) ;
224+ }
223225 }
224226 }
225227 }
226228 }
227229 }
230+ return dom ;
228231 }
229232}
230233
0 commit comments