@@ -13,7 +13,7 @@ const setsAreEqual = (a: Set<string>, b: Set<string>) => {
13
13
} ;
14
14
15
15
type SubmitButtonProps = {
16
- releaseSelections : Record < string , string > ;
16
+ selections : Record < string , string > ;
17
17
packageDependencyErrors : Record <
18
18
string ,
19
19
{ missingDependentNames : string [ ] ; missingDependencies : string [ ] }
@@ -22,16 +22,14 @@ type SubmitButtonProps = {
22
22
} ;
23
23
24
24
function SubmitButton ( {
25
- releaseSelections ,
25
+ selections ,
26
26
packageDependencyErrors,
27
27
onSubmit,
28
28
} : SubmitButtonProps ) {
29
29
const isDisabled =
30
- Object . keys ( releaseSelections ) . length === 0 ||
30
+ Object . keys ( selections ) . length === 0 ||
31
31
Object . keys ( packageDependencyErrors ) . length > 0 ||
32
- Object . values ( releaseSelections ) . every (
33
- ( value ) => value === 'intentionally-skip' ,
34
- ) ;
32
+ Object . values ( selections ) . every ( ( value ) => value === 'intentionally-skip' ) ;
35
33
36
34
return (
37
35
< button
@@ -50,9 +48,7 @@ function SubmitButton({
50
48
51
49
function App ( ) {
52
50
const [ packages , setPackages ] = useState < Package [ ] > ( [ ] ) ;
53
- const [ releaseSelections , setReleaseSelections ] = useState <
54
- Record < string , string >
55
- > ( { } ) ;
51
+ const [ selections , setSelections ] = useState < Record < string , string > > ( { } ) ;
56
52
const [ isSubmitting , setIsSubmitting ] = useState ( false ) ;
57
53
const [ error , setError ] = useState < string | null > ( null ) ;
58
54
const [ changelogs , setChangelogs ] = useState < Record < string , string > > ( { } ) ;
@@ -80,7 +76,7 @@ function App() {
80
76
const previousPackages = useRef < Set < string > > ( new Set ( ) ) ;
81
77
82
78
useEffect ( ( ) => {
83
- const majorBumps = Object . entries ( releaseSelections )
79
+ const majorBumps = Object . entries ( selections )
84
80
. filter ( ( [ _ , type ] ) => type === 'major' )
85
81
. map ( ( [ pkgName ] ) => pkgName ) ;
86
82
@@ -94,9 +90,9 @@ function App() {
94
90
. then ( ( data : Package [ ] ) => {
95
91
const newPackageNames = new Set ( data . map ( ( pkg ) => pkg . name ) ) ;
96
92
97
- // Only clean up releaseSelections if the package list actually changed
93
+ // Only clean up selections if the package list actually changed
98
94
if ( ! setsAreEqual ( previousPackages . current , newPackageNames ) ) {
99
- setReleaseSelections ( ( prev ) =>
95
+ setSelections ( ( prev ) =>
100
96
Object . fromEntries (
101
97
Object . entries ( prev ) . filter ( ( [ pkgName ] ) =>
102
98
newPackageNames . has ( pkgName ) ,
@@ -115,7 +111,7 @@ function App() {
115
111
setError ( err . message ) ;
116
112
console . error ( 'Error fetching packages:' , err ) ;
117
113
} ) ;
118
- } , [ releaseSelections ] ) ;
114
+ } , [ selections ] ) ;
119
115
120
116
const checkDependencies = async ( selectionData : Record < string , string > ) => {
121
117
if ( Object . keys ( selectionData ) . length === 0 ) return ;
@@ -148,11 +144,11 @@ function App() {
148
144
149
145
useEffect ( ( ) => {
150
146
const timeoutId = setTimeout ( ( ) => {
151
- void checkDependencies ( releaseSelections ) ;
147
+ void checkDependencies ( selections ) ;
152
148
} , 500 ) ;
153
149
154
150
return ( ) => clearTimeout ( timeoutId ) ;
155
- } , [ releaseSelections ] ) ;
151
+ } , [ selections ] ) ;
156
152
157
153
const handleCustomVersionChange = ( packageName : string , version : string ) => {
158
154
try {
@@ -182,7 +178,7 @@ function App() {
182
178
return rest ;
183
179
} ) ;
184
180
185
- setReleaseSelections ( ( prev ) => ( {
181
+ setSelections ( ( prev ) => ( {
186
182
...prev ,
187
183
[ packageName ] : version ,
188
184
} ) ) ;
@@ -199,14 +195,14 @@ function App() {
199
195
value : ReleaseType | '' ,
200
196
) : void => {
201
197
if ( value === '' ) {
202
- const { [ packageName ] : _ , ...rest } = releaseSelections ;
203
- setReleaseSelections ( rest ) ;
198
+ const { [ packageName ] : _ , ...rest } = selections ;
199
+ setSelections ( rest ) ;
204
200
205
201
const { [ packageName ] : __ , ...remainingErrors } = packageDependencyErrors ;
206
202
setPackageDependencyErrors ( remainingErrors ) ;
207
203
} else {
208
- setReleaseSelections ( {
209
- ...releaseSelections ,
204
+ setSelections ( {
205
+ ...selections ,
210
206
[ packageName ] : value ,
211
207
} ) ;
212
208
}
@@ -218,7 +214,7 @@ function App() {
218
214
const response = await fetch ( '/api/release' , {
219
215
method : 'POST' ,
220
216
headers : { 'Content-Type' : 'application/json' } ,
221
- body : JSON . stringify ( releaseSelections ) ,
217
+ body : JSON . stringify ( selections ) ,
222
218
} ) ;
223
219
224
220
const data : {
@@ -254,8 +250,8 @@ function App() {
254
250
const errorMessage =
255
251
err instanceof Error ? err . message : 'An error occurred' ;
256
252
setError ( errorMessage ) ;
257
- console . error ( 'Error submitting releaseSelections :' , err ) ;
258
- alert ( 'Failed to submit releaseSelections . Please try again.' ) ;
253
+ console . error ( 'Error submitting selections :' , err ) ;
254
+ alert ( 'Failed to submit selections . Please try again.' ) ;
259
255
} finally {
260
256
setIsSubmitting ( false ) ;
261
257
}
@@ -280,11 +276,11 @@ function App() {
280
276
} ;
281
277
282
278
const handleBulkAction = ( action : ReleaseType ) => {
283
- const newReleaseSelections = { ...releaseSelections } ;
279
+ const newReleaseSelections = { ...selections } ;
284
280
selectedPackages . forEach ( ( packageName ) => {
285
281
newReleaseSelections [ packageName ] = action ;
286
282
} ) ;
287
- setReleaseSelections ( newReleaseSelections ) ;
283
+ setSelections ( newReleaseSelections ) ;
288
284
setSelectedPackages ( new Set ( ) ) ;
289
285
setShowCheckboxes ( true ) ;
290
286
} ;
@@ -393,7 +389,7 @@ function App() {
393
389
< PackageItem
394
390
key = { pkg . name }
395
391
pkg = { pkg }
396
- releaseSelections = { releaseSelections }
392
+ selections = { selections }
397
393
versionErrors = { versionErrors }
398
394
packageDependencyErrors = { packageDependencyErrors }
399
395
loadingChangelogs = { loadingChangelogs }
@@ -403,7 +399,7 @@ function App() {
403
399
onSelectionChange = { handleSelectionChange }
404
400
onCustomVersionChange = { handleCustomVersionChange }
405
401
onFetchChangelog = { fetchChangelog }
406
- setReleaseSelections = { setReleaseSelections }
402
+ setSelections = { setSelections }
407
403
setChangelogs = { setChangelogs }
408
404
onToggleSelect = { ( ) => togglePackageSelection ( pkg . name ) }
409
405
/>
@@ -412,7 +408,7 @@ function App() {
412
408
413
409
{ packages . length > 0 && (
414
410
< SubmitButton
415
- releaseSelections = { releaseSelections }
411
+ selections = { selections }
416
412
packageDependencyErrors = { packageDependencyErrors }
417
413
onSubmit = { handleSubmit }
418
414
/>
0 commit comments