1+ import { CapacitorUpdater } from 'capacitor-updater'
12import { randomSelect } from '../services/random'
23import { defineStore } from 'pinia'
34
@@ -10,19 +11,30 @@ import {
1011} from '../services/firebase'
1112import { useGameStore } from './game'
1213
13- const { getLangMessages, getThemes, getGuessesDb } = useFirebase ( )
14+ const { getLangMessages, getThemes, getGuessesDb, getLastVersion } =
15+ useFirebase ( )
1416
1517const filterListByTitle = ( list : Guess [ ] , past : string [ ] ) => {
1618 const filtered = list . filter ( ( n ) => ! past . includes ( n . title ) )
1719 return filtered
1820}
21+ interface Version {
22+ version : string
23+ path : string
24+ folder : string
25+ }
1926
2027export const useMainStore = defineStore ( 'main' , {
2128 // other options...
2229 state : ( ) => ( {
2330 error : false ,
2431 loading : false ,
25- version : '' ,
32+ lastVersion : {
33+ version : '' ,
34+ path : '' ,
35+ folder : '' ,
36+ } as Version ,
37+ versions : [ ] as Version [ ] ,
2638 lastUpdate : '' ,
2739 initialized : false ,
2840 currentPath : '/home' ,
@@ -66,7 +78,11 @@ export const useMainStore = defineStore('main', {
6678 return
6779 this . loading = true
6880 try {
69- await Promise . all ( [ this . initLangMessages ( ) , this . initThemes ( ) ] )
81+ await Promise . all ( [
82+ this . initLangMessages ( ) ,
83+ this . initThemes ( ) ,
84+ this . getLastVersion ( ) ,
85+ ] )
7086 await this . initGuessTheme ( )
7187 this . initialized = true
7288 } catch ( err : any ) {
@@ -76,6 +92,15 @@ export const useMainStore = defineStore('main', {
7692 this . lastUpdate = new Date ( ) . toISOString ( )
7793 this . loading = false
7894 } ,
95+ async getLastVersion ( ) {
96+ const newVersion = await getLastVersion ( )
97+ if ( newVersion . version !== this . lastVersion . version ) {
98+ this . lastVersion . version = newVersion . version
99+ this . lastVersion . path = newVersion . versionPath
100+ this . lastVersion . folder = ''
101+ this . versions . push ( this . lastVersion )
102+ }
103+ } ,
79104 async initGuessTheme ( ) {
80105 this . guessDb = await getGuessesDb ( this . themes , this . lang )
81106 } ,
0 commit comments