@@ -4,6 +4,7 @@ import { exec } from "child_process";
4
4
import { launchProvider } from "./utils/config/provider.js" ;
5
5
import {
6
6
createConfigurationIfNotPresent ,
7
+ getAppLatestVersion ,
7
8
hasConfiguration ,
8
9
initConfiguration ,
9
10
returnPropertiesPath ,
@@ -13,7 +14,7 @@ import { initServer } from "./server/init.js";
13
14
import { initialiseDatabase } from "./mysql/connector.js" ;
14
15
import { STRINGS } from "./strings.js" ;
15
16
import { staticHost } from "./server/host.js" ;
16
- import { generateEnum } from "./server/generator.js" ;
17
+ import { generateEnum } from "./server/generator.js" ;
17
18
18
19
export async function validateCommand ( command ) {
19
20
if ( command == "run" ) {
@@ -25,35 +26,42 @@ export async function validateCommand(command) {
25
26
} else {
26
27
await lpFunction ( ) ;
27
28
}
28
- } else if ( command == "update" ) {
29
- let update_command =
30
- platform ( ) == "win32"
31
- ? STRINGS . NPM_INSTALL_CMD
32
- : STRINGS . SUDO_NPM_INSTALL_CMD ;
33
- exec ( update_command , ( error , stdout , stderr ) => {
34
- if ( error ) {
35
- SQLog . error ( STRINGS . UPDATE_ERROR , false ) ;
36
- return ;
37
- }
38
- if ( stdout ) {
39
- SQLog . success ( STRINGS . UPDATE_SUCCESSFULLY , false ) ;
40
- return ;
41
- }
42
- if ( stderr ) {
43
- SQLog . error ( STRINGS . UPDATE_ERROR , false ) ;
44
- return ;
45
- }
46
- } ) ;
29
+ } else if ( command == "upgrade" ) {
30
+ let latestVersion = await getAppLatestVersion ( )
31
+ if ( latestVersion === STRINGS . APP_VERSION ) {
32
+ SQLog . info ( STRINGS . ALREADY_UP_TO_DATE )
33
+ } else {
34
+ SQLog . info ( `${ STRINGS . NEW_VERSION_AVAILABLE } ${ latestVersion } .` )
35
+ SQLog . info ( `${ STRINGS . CURRENT_VERSION } ${ STRINGS . APP_VERSION } ` )
36
+ let update_command =
37
+ platform ( ) == "win32"
38
+ ? STRINGS . NPM_INSTALL_CMD
39
+ : STRINGS . SUDO_NPM_INSTALL_CMD ;
40
+ exec ( update_command , ( error , stdout , stderr ) => {
41
+ if ( error ) {
42
+ SQLog . error ( STRINGS . UPDATE_ERROR , false ) ;
43
+ return ;
44
+ }
45
+ if ( stdout ) {
46
+ SQLog . success ( STRINGS . UPDATE_SUCCESSFULLY , false ) ;
47
+ return ;
48
+ }
49
+ if ( stderr ) {
50
+ SQLog . error ( STRINGS . UPDATE_ERROR , false ) ;
51
+ return ;
52
+ }
53
+ } ) ;
54
+ }
47
55
} else if ( command == "config" ) {
48
56
await lpFunction ( ) ;
49
57
} else if ( command == "host" ) {
50
58
staticHost ( ) ;
51
- } else if ( command == "enum" ) {
59
+ } else if ( command == "enum" ) {
52
60
await initConfiguration ( ) ;
53
61
await initialiseDatabase ( ) ;
54
62
await generateEnum ( ) ;
55
63
}
56
- else {
64
+ else {
57
65
SQLog . error ( STRINGS . UNKNOWN_COMMAND , false ) ;
58
66
}
59
67
}
0 commit comments