diff options
Diffstat (limited to 'backend/instance/utils.ts')
| -rw-r--r-- | backend/instance/utils.ts | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/backend/instance/utils.ts b/backend/instance/utils.ts new file mode 100644 index 0000000..0299428 --- /dev/null +++ b/backend/instance/utils.ts @@ -0,0 +1,38 @@ +import fs from 'fs'; + +export function getTimestamp() { + return new Date().toLocaleString(); +} + +export function parseChunkedJson( r: { done: boolean, value?: Uint8Array }, onMsg: Function ) : boolean { + const decoder = new TextDecoder(); + + const { done, value } = r; + if( done || !value ) + return false; + + let raw = decoder.decode( value ); + let split = raw.split( '\n' ); + for( let p of split ) { + try { + const json = JSON.parse( p ); + if( json.done ) + return true; + if( onMsg( json ) ) + break; + } catch( e ) { + continue; + } + } + + return true; +} + +export function jwt_secret() { + let file = fs.readFileSync( '../data/jwt_secret.txt', 'utf8' ); + if( file.endsWith( '\n' ) ) { + file = file.slice( 0, -1 ); + } + + return file; +} |
