@@ -32,8 +32,8 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
3232 const {
3333 visible,
3434 setVisible,
35- skipVersion ,
36- setSkipVersion ,
35+ skipVersions ,
36+ setSkipVersions ,
3737 isOptional,
3838 updateInfo,
3939 setUpdateInfo,
@@ -75,13 +75,13 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
7575 const update = await checkUpdate ( ) ;
7676
7777 if ( update ) {
78- setUpdateInfo ( update ) ;
78+ const { skipVersions } = useUpdateStore . getState ( ) ;
7979
80- if ( skipVersion === update . version ) return ;
80+ setVisible ( ! skipVersions . includes ( update . version ) ) ;
8181
82- setVisible ( true ) ;
82+ setUpdateInfo ( update ) ;
8383 }
84- } , [ skipVersion ] ) ;
84+ } , [ skipVersions ] ) ;
8585
8686 const cursorClassName = useMemo ( ( ) => {
8787 return state . loading ? "cursor-not-allowed" : "cursor-pointer" ;
@@ -129,7 +129,9 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
129129 const handleSkip = ( ) => {
130130 if ( state . loading ) return ;
131131
132- setSkipVersion ( updateInfo ?. version ) ;
132+ const { skipVersions, updateInfo } = useUpdateStore . getState ( ) ;
133+
134+ setSkipVersions ( [ ...skipVersions , updateInfo . version ] ) ;
133135
134136 isCheckPage ? hide_check ( ) : setVisible ( false ) ;
135137 } ;
@@ -178,7 +180,7 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
178180 < img src = { isDark ? darkIcon : lightIcon } className = "h-6" />
179181
180182 < div className = "text-[#333] text-sm leading-5 py-2 dark:text-[#D8D8D8] text-center" >
181- { updateInfo ?. available ? (
183+ { updateInfo ? (
182184 isOptional ? (
183185 t ( "update.optional_description" )
184186 ) : (
@@ -192,7 +194,7 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
192194 ) }
193195 </ div >
194196
195- { updateInfo ?. available ? (
197+ { updateInfo ? (
196198 < div
197199 className = "text-xs text-[#0072FF] cursor-pointer"
198200 onClick = { ( ) =>
@@ -219,21 +221,21 @@ const UpdateApp = ({ isCheckPage }: UpdateAppProps) => {
219221 cursorClassName ,
220222 state . loading && "opacity-50"
221223 ) }
222- onClick = { updateInfo ?. available ? handleDownload : handleSkip }
224+ onClick = { updateInfo ? handleDownload : handleSkip }
223225 >
224226 { state . loading ? (
225227 < div className = "flex justify-center items-center gap-2" >
226228 < LoaderCircle className = "animate-spin size-5" />
227229 { percent } %
228230 </ div >
229- ) : updateInfo ?. available ? (
231+ ) : updateInfo ? (
230232 t ( "update.button.install" )
231233 ) : (
232234 t ( "update.button.ok" )
233235 ) }
234236 </ Button >
235237
236- { updateInfo ?. available && isOptional && (
238+ { ! isCheckPage && updateInfo && isOptional && (
237239 < div
238240 className = { clsx ( "text-xs text-[#999]" , cursorClassName ) }
239241 onClick = { handleSkip }
0 commit comments