@@ -3,7 +3,16 @@ import { createSelector } from 'reselect';
3
3
import * as url from 'url' ;
4
4
5
5
import { State } from '../reducers' ;
6
- import { Backtrace , Channel , Edition , Orientation , PrimaryActionAuto , PrimaryActionCore , AceResizeKey } from '../types' ;
6
+ import {
7
+ AceResizeKey ,
8
+ Backtrace ,
9
+ Channel ,
10
+ Edition ,
11
+ Orientation ,
12
+ PrimaryActionAuto ,
13
+ PrimaryActionCore ,
14
+ Version ,
15
+ } from '../types' ;
7
16
8
17
const codeSelector = ( state : State ) => state . code ;
9
18
@@ -89,27 +98,27 @@ const LABELS: { [index in PrimaryActionCore]: string } = {
89
98
90
99
export const getExecutionLabel = createSelector ( primaryActionSelector , primaryAction => LABELS [ primaryAction ] ) ;
91
100
92
- const getStable = ( state : State ) => state . versions && state . versions . stable ;
93
- const getBeta = ( state : State ) => state . versions && state . versions . beta ;
94
- const getNightly = ( state : State ) => state . versions && state . versions . nightly ;
95
- const getRustfmt = ( state : State ) => state . versions && state . versions . rustfmt ;
96
- const getClippy = ( state : State ) => state . versions && state . versions . clippy ;
97
- const getMiri = ( state : State ) => state . versions && state . versions . miri ;
98
-
99
- const versionNumber = v => v ? v . version : '' ;
100
- export const stableVersionText = createSelector ( [ getStable ] , versionNumber ) ;
101
- export const betaVersionText = createSelector ( [ getBeta ] , versionNumber ) ;
102
- export const nightlyVersionText = createSelector ( [ getNightly ] , versionNumber ) ;
103
- export const clippyVersionText = createSelector ( [ getClippy ] , versionNumber ) ;
104
- export const rustfmtVersionText = createSelector ( [ getRustfmt ] , versionNumber ) ;
105
- export const miriVersionText = createSelector ( [ getMiri ] , versionNumber ) ;
106
-
107
- const versionDetails = v => v ? `${ v . date } ${ v . hash . slice ( 0 , 20 ) } ` : '' ;
108
- export const betaVersionDetailsText = createSelector ( [ getBeta ] , versionDetails ) ;
109
- export const nightlyVersionDetailsText = createSelector ( [ getNightly ] , versionDetails ) ;
110
- export const clippyVersionDetailsText = createSelector ( [ getClippy ] , versionDetails ) ;
111
- export const rustfmtVersionDetailsText = createSelector ( [ getRustfmt ] , versionDetails ) ;
112
- export const miriVersionDetailsText = createSelector ( [ getMiri ] , versionDetails ) ;
101
+ const getStable = ( state : State ) => state . versions ? .stable ;
102
+ const getBeta = ( state : State ) => state . versions ? .beta ;
103
+ const getNightly = ( state : State ) => state . versions ? .nightly ;
104
+ const getRustfmt = ( state : State ) => state . versions ? .rustfmt ;
105
+ const getClippy = ( state : State ) => state . versions ? .clippy ;
106
+ const getMiri = ( state : State ) => state . versions ? .miri ;
107
+
108
+ const versionNumber = ( v : Version | undefined ) => v ? v . version : '' ;
109
+ export const stableVersionText = createSelector ( getStable , versionNumber ) ;
110
+ export const betaVersionText = createSelector ( getBeta , versionNumber ) ;
111
+ export const nightlyVersionText = createSelector ( getNightly , versionNumber ) ;
112
+ export const clippyVersionText = createSelector ( getClippy , versionNumber ) ;
113
+ export const rustfmtVersionText = createSelector ( getRustfmt , versionNumber ) ;
114
+ export const miriVersionText = createSelector ( getMiri , versionNumber ) ;
115
+
116
+ const versionDetails = ( v : Version | undefined ) => v ? `${ v . date } ${ v . hash . slice ( 0 , 20 ) } ` : '' ;
117
+ export const betaVersionDetailsText = createSelector ( getBeta , versionDetails ) ;
118
+ export const nightlyVersionDetailsText = createSelector ( getNightly , versionDetails ) ;
119
+ export const clippyVersionDetailsText = createSelector ( getClippy , versionDetails ) ;
120
+ export const rustfmtVersionDetailsText = createSelector ( getRustfmt , versionDetails ) ;
121
+ export const miriVersionDetailsText = createSelector ( getMiri , versionDetails ) ;
113
122
114
123
const editionSelector = ( state : State ) => state . configuration . edition ;
115
124
0 commit comments