@@ -80,18 +80,19 @@ $(document).ready(function() {
8080 const versionList = document . querySelector ( '.switcher__list dl.versions' ) ;
8181 const olderVersions = document . querySelector ( '#older-versions' ) ;
8282
83+ const versionName = ( versionNode ) => versionNode . textContent . trim ( ) ;
84+ const allVersions = [ ...versionList . querySelectorAll ( 'dd' ) ] ;
85+
8386 // Remove latest version entry from the list
84- const latestVersion = [ ... versionList . querySelectorAll ( 'dd' ) ] . find ( v => v . textContent . trim ( ) === 'latest' ) ;
87+ const latestVersion = allVersions . find ( ( versionNode ) => versionName ( versionNode ) === 'latest' ) ;
8588 latestVersion ?. remove ( ) ;
8689
87- const allVersions = [ ...versionList . querySelectorAll ( 'dd' ) ] ;
88- const versionName = ( versionNode ) => versionNode . textContent . trim ( ) ;
89-
9090 // Order: SaaS first, then supported versions, then EOL versions at the bottom
9191 const saasVersions = allVersions . filter ( ( versionNode ) => versionName ( versionNode ) === 'saas' ) ;
9292 const eolVersionNodes = allVersions . filter ( ( versionNode ) => eolVersions . includes ( versionName ( versionNode ) ) ) ;
93- const supportedVersions = allVersions . filter ( ( versionNode ) => ! saasVersions . includes ( versionNode ) && ! eolVersionNodes . includes ( versionNode ) ) ;
94- [ ...saasVersions , ...supportedVersions , ...eolVersionNodes ] . forEach ( ( versionNode ) => versionList . appendChild ( versionNode ) ) ;
93+ const supportedVersions = allVersions . filter ( ( versionNode ) => versionNode !== latestVersion && ! saasVersions . includes ( versionNode ) && ! eolVersionNodes . includes ( versionNode ) ) ;
94+ const orderedVersions = [ ...saasVersions , ...supportedVersions , ...eolVersionNodes ] ;
95+ orderedVersions . forEach ( ( versionNode ) => versionList . appendChild ( versionNode ) ) ;
9596
9697 if ( eolVersionNodes . length > 0 ) {
9798 olderVersions . hidden = false ;
@@ -101,14 +102,13 @@ $(document).ready(function() {
101102 versionNode . hidden = true ;
102103 } ) ;
103104
104- allVersions
105- . forEach ( ( versionNode ) => {
106- versionNode . querySelector ( 'a' ) . textContent = versionLabels [ versionName ( versionNode ) ] ?? versionName ( versionNode ) ;
107- } ) ;
105+ orderedVersions . forEach ( ( versionNode ) => {
106+ versionNode . querySelector ( 'a' ) . textContent = versionLabels [ versionName ( versionNode ) ] ?? versionName ( versionNode ) ;
107+ } ) ;
108108
109109 olderVersions . addEventListener ( 'click' , ( event ) => {
110110 event . stopPropagation ( ) ;
111- allVersions . forEach ( ( versionNode ) => {
111+ orderedVersions . forEach ( ( versionNode ) => {
112112 versionNode . hidden = false ;
113113 } ) ;
114114 olderVersions . hidden = true ;
0 commit comments