1313 <icon-loader v-model =" isUpdating" />
1414 Update
1515 </button >
16+ <button v-if =" needRefresh" type =" button" @click.prevent =" updateServiceWorker(true)" >
17+ <icon-progress-alert />
18+ Update app
19+ </button >
1620 </div >
1721 <div >
1822 <import-export :no-data =" isEmpty" />
2226</template >
2327<script setup lang="ts">
2428import { ref } from " vue" ;
25- import { IconActivityHeartbeat } from " @tabler/icons-vue" ;
29+ import { IconActivityHeartbeat , IconProgressAlert } from " @tabler/icons-vue" ;
2630import { clearCachedRequests } from " @/service/memoize" ;
2731import { fetchRateLimit , rateLimit } from " @/service/octokit" ;
2832import { useEventsStore } from " @/store/events" ;
2933import { useLatestVersionsStore } from " @/store/latest-versions" ;
3034import { useRepositoriesStore } from " @/store/repositories" ;
35+ import { useSettingsStore } from " @/store/settings" ;
3136import IconLoader from " ../icon-loader.vue" ;
3237import AboutModal from " ../modals/about-modal.vue" ;
3338import AddRepo from " ../modals/add-repo.vue" ;
@@ -38,6 +43,7 @@ import ImportExport from "./import-export.vue";
3843const { isEmpty, updateRepositories } = useRepositoriesStore ();
3944const { updateLatestVersions } = useLatestVersionsStore ();
4045const { updateEvents } = useEventsStore ();
46+ const { needRefresh, updateServiceWorker } = useSettingsStore ();
4147
4248const isUpdating = ref <boolean >(false );
4349async function update(): Promise <void > {
0 commit comments