@@ -2,17 +2,40 @@ import { exec, toast, moduleInfo } from './kernelsu.js';
2
2
import router_state from './router.js' ;
3
3
import { addLog } from './logs.js' ;
4
4
5
- export function updateModuleInformation ( ) {
5
+ async function readModuleProp ( ) {
6
+ try {
7
+ const { stdout : details } = await exec ( `cat /data/adb/modules/tcp_optimiser/module.prop` ) ;
8
+ const lines = details . trim ( ) . split ( '\n' ) . filter ( line => line ) ;
9
+
10
+ // Convert lines to object
11
+ let moduleInfo = lines . reduce ( ( acc , line ) => {
12
+ const [ key , ...rest ] = line . split ( '=' ) ;
13
+ const value = rest . join ( '=' ) . trim ( ) ; // handle values with '=' in them
14
+ acc [ key . trim ( ) ] = value ;
15
+ return acc ;
16
+ } , { } ) ;
17
+
18
+ moduleInfo [ "moduleDir" ] = `/data/adb/modules/${ moduleInfo . id } ` ;
19
+ return moduleInfo ;
20
+ } catch ( error ) {
21
+
22
+ }
23
+ }
24
+
25
+ export async function updateModuleInformation ( ) {
6
26
try {
7
27
router_state . moduleInformation = JSON . parse ( moduleInfo ( ) ) ;
8
- var versionStr = router_state . moduleInformation . version ? 'v' + router_state . moduleInformation . version : '' ;
9
- var versionCodeStr = router_state . moduleInformation . versionCode ? router_state . moduleInformation . versionCode : '' ;
10
- var finalVersionStr = versionStr != '' && versionCodeStr != '' ? `${ versionStr } (${ versionCodeStr } )` : "module.prop might be corrupted!"
11
- document . getElementById ( 'version' ) . textContent = finalVersionStr ;
28
+ if ( router_state . moduleInformation != { } ) {
29
+ router_state . moduleInformation = await readModuleProp ( ) ;
30
+ }
12
31
} catch ( error ) {
13
32
console . error ( 'Error updating module info:' , error ) ;
14
33
toast ( "Error fetching module info." ) ;
15
34
}
35
+ var versionStr = router_state . moduleInformation . version ? 'v' + router_state . moduleInformation . version : '' ;
36
+ var versionCodeStr = router_state . moduleInformation . versionCode ? router_state . moduleInformation . versionCode : '' ;
37
+ var finalVersionStr = versionStr != '' && versionCodeStr != '' ? `${ versionStr } (${ versionCodeStr } )` : "module.prop might be corrupted!"
38
+ document . getElementById ( 'version' ) . textContent = finalVersionStr ;
16
39
}
17
40
18
41
export async function getModuleActiveState ( ) {
0 commit comments