@@ -178,46 +178,25 @@ export class TrainrunSection {
178
178
if ( ! time ?. timeFormatter ?. stylePattern ) {
179
179
return undefined ;
180
180
}
181
- const stylePattern = time . timeFormatter . stylePattern ;
182
- let formattedText = "" ;
183
- const consecutiveTimePatternHHMMSS = "{{consecutiveTime}}.format(HH:mm:ss)" ;
184
- const consecutiveTimePatternHHMM = "{{consecutiveTime}}.format(HH:mm)" ;
185
- const consecutiveTimePattern = "{{consecutiveTime}}" ;
186
- const timePatternHHMMSS = "{{time}}.format(HH:mm:ss)" ;
187
- const timePatternHHMM = "{{time}}.format(HH:mm)" ;
188
- const timePattern = "{{time}}" ;
189
181
190
182
const consecutiveTimeDate = new Date ( null ) ;
191
183
consecutiveTimeDate . setSeconds ( ( time . consecutiveTime + offset ) * 60 ) ;
192
184
const timeDate = new Date ( null ) ;
193
185
timeDate . setSeconds ( ( ( time . time + offset + 24 * 60 ) % 60 ) * 60 ) ;
194
186
195
- formattedText = stylePattern ;
196
- formattedText = formattedText . replace (
197
- consecutiveTimePatternHHMMSS ,
198
- formatDate ( consecutiveTimeDate . toISOString ( ) , "HH:mm:ss" , "en-US" , "UTC" ) ,
199
- ) ;
200
- formattedText = formattedText . replace (
201
- consecutiveTimePatternHHMM ,
202
- formatDate ( consecutiveTimeDate . toISOString ( ) , "HH:mm" , "en-US" , "UTC" ) ,
203
- ) ;
204
- formattedText = formattedText . replace (
205
- consecutiveTimePattern ,
206
- "" + time . consecutiveTime ,
207
- ) ;
187
+ const patterns = {
188
+ "{{consecutiveTime}}.format(HH:mm:ss)" : formatDate ( consecutiveTimeDate . toISOString ( ) , "HH:mm:ss" , "en-US" , "UTC" ) ,
189
+ "{{consecutiveTime}}.format(HH:mm)" : formatDate ( consecutiveTimeDate . toISOString ( ) , "HH:mm" , "en-US" , "UTC" ) ,
190
+ "{{consecutiveTime}}" : "" + time . consecutiveTime ,
191
+ "{{time}}.format(HH:mm:ss)" : formatDate ( timeDate . toISOString ( ) , "HH:mm:ss" , "en-US" , "UTC" ) ,
192
+ "{{time}}.format(HH:mm)" : formatDate ( timeDate . toISOString ( ) , "HH:mm" , "en-US" , "UTC" ) ,
193
+ "{{time}}" : "" + ( ( time . time + offset + 24 * 60 ) % 60 ) ,
194
+ } ;
208
195
209
- formattedText = formattedText . replace (
210
- timePatternHHMMSS ,
211
- formatDate ( timeDate . toISOString ( ) , "HH:mm:ss" , "en-US" , "UTC" ) ,
212
- ) ;
213
- formattedText = formattedText . replace (
214
- timePatternHHMM ,
215
- formatDate ( timeDate . toISOString ( ) , "HH:mm" , "en-US" , "UTC" ) ,
216
- ) ;
217
- formattedText = formattedText . replace (
218
- timePattern ,
219
- "" + ( ( time . time + offset + 24 * 60 ) % 60 ) ,
220
- ) ;
196
+ let formattedText = time . timeFormatter . stylePattern ;
197
+ for ( const pattern in patterns ) {
198
+ formattedText = formattedText . replace ( pattern , patterns [ pattern ] ) ;
199
+ }
221
200
222
201
return formattedText ;
223
202
}
0 commit comments