prettier 4 tabwidth

This commit is contained in:
mrfry 2022-12-10 15:34:54 +01:00
parent 00ec614f1d
commit 96b413a365
42 changed files with 7034 additions and 6905 deletions

View file

@ -1,6 +1,6 @@
module.exports = { module.exports = {
trailingComma: 'es5', trailingComma: 'es5',
tabWidth: 2, tabWidth: 4,
semi: false, semi: false,
singleQuote: true, singleQuote: true,
arrowParens: 'always', arrowParens: 'always',

View file

@ -81,7 +81,9 @@ export default function (options: Options): any {
logger.LogStat( logger.LogStat(
req.url, req.url,
hostname, hostname,
req.session && req.session.user ? req.session.user.id : 'NOUSER' req.session && req.session.user
? req.session.user.id
: 'NOUSER'
) )
} }
}) })

View file

@ -178,7 +178,9 @@ function setup(data: SubmoduleData): void {
} }
dbtools.Insert(msgDB, 'msgs', msgObj) dbtools.Insert(msgDB, 'msgs', msgObj)
if (userid !== parseInt(reciever)) { if (userid !== parseInt(reciever)) {
io.sockets.in(reciever.toString()).emit('chat message', msgObj) io.sockets
.in(reciever.toString())
.emit('chat message', msgObj)
} }
} }
) )
@ -234,7 +236,9 @@ function setup(data: SubmoduleData): void {
}) })
}) })
app.post('/postfeedback', function (req: Request<{ content: string }>, res) { app.post(
'/postfeedback',
function (req: Request<{ content: string }>, res) {
logger.LogReq(req) logger.LogReq(req)
const user: User = req.session.user const user: User = req.session.user
const { content } = req.body const { content } = req.body
@ -255,7 +259,8 @@ function setup(data: SubmoduleData): void {
res.json({ success: true }) res.json({ success: true })
io.sockets.in('1').emit('chat message', msgObj) io.sockets.in('1').emit('chat message', msgObj)
}) }
)
app.get('/hasNewMsg', (req: Request, res) => { app.get('/hasNewMsg', (req: Request, res) => {
const user: User = req.session.user const user: User = req.session.user

View file

@ -116,11 +116,11 @@ function addReaction(
} }
if (isDelete) { if (isDelete) {
if (obj[index].reacts[reaction]) { if (obj[index].reacts[reaction]) {
obj[index].reacts[reaction] = obj[index].reacts[reaction].filter( obj[index].reacts[reaction] = obj[index].reacts[
(currUid: number) => { reaction
].filter((currUid: number) => {
return uid !== currUid return uid !== currUid
} })
)
if (obj[index].reacts[reaction].length === 0) { if (obj[index].reacts[reaction].length === 0) {
delete obj[index].reacts[reaction] delete obj[index].reacts[reaction]
} }
@ -184,7 +184,8 @@ function getPostData(
} }
function setup(data: SubmoduleData): void { function setup(data: SubmoduleData): void {
const { app, /* userDB, url, */ publicdirs /*, moduleSpecificData */ } = data const { app, /* userDB, url, */ publicdirs /*, moduleSpecificData */ } =
data
const publicDir = publicdirs[0] const publicDir = publicdirs[0]
@ -209,7 +210,9 @@ function setup(data: SubmoduleData): void {
const { forumPath, contents } = getForumData(forumName, forumDir) const { forumPath, contents } = getForumData(forumName, forumDir)
const from = req.query.from || Object.keys(contents).reverse()[0] const from = req.query.from || Object.keys(contents).reverse()[0]
const count = parseInt(req.query.count ? req.query.count.toString() : '5') const count = parseInt(
req.query.count ? req.query.count.toString() : '5'
)
const getContent = req.query.getContent const getContent = req.query.getContent
let entries = {} let entries = {}
@ -414,7 +417,10 @@ function setup(data: SubmoduleData): void {
if (contents[postKey] && contents[postKey].user === user.id) { if (contents[postKey] && contents[postKey].user === user.id) {
utils.deleteFile(forumPath + '/' + postKey) utils.deleteFile(forumPath + '/' + postKey)
delete contents[postKey] delete contents[postKey]
utils.WriteFile(JSON.stringify(contents, null, 2), contentFilePath) utils.WriteFile(
JSON.stringify(contents, null, 2),
contentFilePath
)
res.json({ success: true, deletedId: postKey }) res.json({ success: true, deletedId: postKey })
} else { } else {
@ -466,7 +472,11 @@ function setup(data: SubmoduleData): void {
return return
} }
const { postPath, postData } = getPostData(postKey, contents, forumPath) const { postPath, postData } = getPostData(
postKey,
contents,
forumPath
)
if (!postData) { if (!postData) {
res.json({ res.json({
success: false, success: false,
@ -488,7 +498,11 @@ function setup(data: SubmoduleData): void {
addComment(postData.comments, path, comment) addComment(postData.comments, path, comment)
} else if (type === 'delete') { } else if (type === 'delete') {
if (postData.comments) { if (postData.comments) {
const success = deleteComment(postData.comments, path, user.id) const success = deleteComment(
postData.comments,
path,
user.id
)
if (!success) { if (!success) {
res.json({ res.json({
success: false, success: false,
@ -542,7 +556,11 @@ function setup(data: SubmoduleData): void {
return return
} }
const { postPath, postData } = getPostData(postKey, contents, forumPath) const { postPath, postData } = getPostData(
postKey,
contents,
forumPath
)
if (!postData) { if (!postData) {
res.json({ res.json({
success: false, success: false,
@ -554,11 +572,11 @@ function setup(data: SubmoduleData): void {
if (postData) { if (postData) {
if (isDelete) { if (isDelete) {
if (postData.reacts) { if (postData.reacts) {
postData.reacts[reaction] = postData.reacts[reaction].filter( postData.reacts[reaction] = postData.reacts[
(uid) => { reaction
].filter((uid) => {
return uid !== user.id return uid !== user.id
} })
)
if (postData.reacts[reaction].length === 0) { if (postData.reacts[reaction].length === 0) {
delete postData.reacts[reaction] delete postData.reacts[reaction]
} }
@ -568,7 +586,9 @@ function setup(data: SubmoduleData): void {
postData.reacts = { [reaction]: [user.id] } postData.reacts = { [reaction]: [user.id] }
} else { } else {
if (Array.isArray(postData.reacts[reaction])) { if (Array.isArray(postData.reacts[reaction])) {
if (!postData.reacts[reaction].includes(user.id)) { if (
!postData.reacts[reaction].includes(user.id)
) {
postData.reacts[reaction].push(user.id) postData.reacts[reaction].push(user.id)
} }
} else { } else {

View file

@ -244,9 +244,11 @@ function getResult(data: {
).filter((x) => { ).filter((x) => {
return !searchIn.includes(x) return !searchIn.includes(x)
}) })
searchInDbs(question, subj, searchInMore, testUrl).then((res) => { searchInDbs(question, subj, searchInMore, testUrl).then(
(res) => {
resolve(res) resolve(res)
}) }
)
} else { } else {
resolve(res) resolve(res)
} }
@ -587,7 +589,13 @@ function setup(data: SubmoduleData): Submodule {
if (suitedQuestionDbs.length === 0) { if (suitedQuestionDbs.length === 0) {
if (!dbExists(location, questionDbs)) { if (!dbExists(location, questionDbs)) {
suitedQuestionDbs.push( suitedQuestionDbs.push(
getNewQdb(location, maxIndex, dbsFile, publicDir, questionDbs) getNewQdb(
location,
maxIndex,
dbsFile,
publicDir,
questionDbs
)
) )
} else { } else {
logger.Log( logger.Log(
@ -608,9 +616,12 @@ function setup(data: SubmoduleData): Submodule {
.then((resultArray: Array<Result>) => { .then((resultArray: Array<Result>) => {
logResult(req.body, resultArray, user.id, dryRun) logResult(req.body, resultArray, user.id, dryRun)
const totalNewQuestions = resultArray.reduce((acc, sres) => { const totalNewQuestions = resultArray.reduce(
(acc, sres) => {
return acc + sres.newQuestions.length return acc + sres.newQuestions.length
}, 0) },
0
)
res.json({ res.json({
success: resultArray.length > 0, success: resultArray.length > 0,
@ -670,16 +681,15 @@ function setup(data: SubmoduleData): Submodule {
writeAskData(req.body) writeAskData(req.body)
// every question in a different thread // every question in a different thread
const resultPromises: Promise<DbSearchResult>[] = req.body.questions.map( const resultPromises: Promise<DbSearchResult>[] =
(question: Question) => { req.body.questions.map((question: Question) => {
return getResult({ return getResult({
question: question, question: question,
subj: subj, subj: subj,
testUrl: testUrl, testUrl: testUrl,
questionDbs: questionDbs, questionDbs: questionDbs,
}) })
} })
)
Promise.all(resultPromises).then((results: DbSearchResult[]) => { Promise.all(resultPromises).then((results: DbSearchResult[]) => {
const response = results.map((result: DbSearchResult) => { const response = results.map((result: DbSearchResult) => {
@ -943,7 +953,10 @@ function setup(data: SubmoduleData): Submodule {
`${date}: User ${user.id} deleted a question from '${subjName}' (index: ${index})`, `${date}: User ${user.id} deleted a question from '${subjName}' (index: ${index})`,
dataEditsLog dataEditsLog
) )
utils.AppendToFile(JSON.stringify(deletedQuestion, null, 2), dataEditsLog) utils.AppendToFile(
JSON.stringify(deletedQuestion, null, 2),
dataEditsLog
)
} }
if (editType === 'edit') { if (editType === 'edit') {

View file

@ -107,7 +107,10 @@ function setup(data: SubmoduleData): void {
} }
} }
logger.Log(`Vote from #${user.id}: ${key}: ${val}`, logger.GetColor('blue')) logger.Log(
`Vote from #${user.id}: ${key}: ${val}`,
logger.GetColor('blue')
)
res.render('votethank', { res.render('votethank', {
result: prevVote ? 'already voted' : 'success', result: prevVote ? 'already voted' : 'success',
prevVote: prevVote, prevVote: prevVote,

View file

@ -90,9 +90,16 @@ function setup(data: SubmoduleData): void {
} else { } else {
result[userId] = { result[userId] = {
count: uidRes.count + userStat.count, count: uidRes.count + userStat.count,
newQuestions: uidRes.newQuestions + userStat.newQuestions, newQuestions:
allQuestions: uidRes.allQuestions + userStat.allQuestions, uidRes.newQuestions +
subjs: mergeObjSum(uidRes.subjs, userStat.subjs), userStat.newQuestions,
allQuestions:
uidRes.allQuestions +
userStat.allQuestions,
subjs: mergeObjSum(
uidRes.subjs,
userStat.subjs
),
} }
} }
}) })

View file

@ -65,7 +65,9 @@ function listDir(publicDir: string, subdir: string, userFilesDir: string) {
date: stat.mtime.getTime(), date: stat.mtime.getTime(),
user: users && users[file] ? users[file].uid : -1, user: users && users[file] ? users[file].uid : -1,
views: views:
users && users[file] && users[file].views ? users[file].views : 0, users && users[file] && users[file].views
? users[file].views
: 0,
upvotes: upvotes:
users && users[file] && users[file].upvotes users && users[file] && users[file].upvotes
? users[file].upvotes ? users[file].upvotes
@ -95,7 +97,8 @@ function setup(data: SubmoduleData): void {
const x = safePath.split('/') const x = safePath.split('/')
const dir = x[2] const dir = x[2]
const fname = x.pop() const fname = x.pop()
const dataFilePath = userFilesDir + '/' + dir + '/' + dataFileName const dataFilePath =
userFilesDir + '/' + dir + '/' + dataFileName
const data = utils.ReadJSON(dataFilePath) const data = utils.ReadJSON(dataFilePath)
@ -250,7 +253,8 @@ function setup(data: SubmoduleData): void {
logger.GetColor('blue') logger.GetColor('blue')
) )
const usersFile = userFilesDir + '/' + safeDir + '/' + dataFileName const usersFile =
userFilesDir + '/' + safeDir + '/' + dataFileName
const users = utils.ReadJSON(usersFile) const users = utils.ReadJSON(usersFile)
users[body.fileName] = { uid: user.id } users[body.fileName] = { uid: user.id }
utils.WriteFile(JSON.stringify(users), usersFile) utils.WriteFile(JSON.stringify(users), usersFile)

View file

@ -163,7 +163,8 @@ function setup(data: SubmoduleData): Submodule {
}) })
.sort((a: Session, b: Session) => { .sort((a: Session, b: Session) => {
return ( return (
new Date(a.lastAccess).getTime() - new Date(b.lastAccess).getTime() new Date(a.lastAccess).getTime() -
new Date(b.lastAccess).getTime()
) )
}) })

View file

@ -53,7 +53,10 @@ function GetApp(): ModuleType {
auth({ auth({
userDB: userDB, userDB: userDB,
jsonResponse: false, jsonResponse: false,
exceptions: ['/favicon.ico', '/img/frylabs-logo_large_transparent.png'], exceptions: [
'/favicon.ico',
'/img/frylabs-logo_large_transparent.png',
],
}) })
) )
app.use((req: Request, _res, next) => { app.use((req: Request, _res, next) => {
@ -180,7 +183,11 @@ function GetApp(): ModuleType {
if (!redirect.nolog) { if (!redirect.nolog) {
logger.LogReq(req) logger.LogReq(req)
} }
logger.DebugLog(`Qmining module ${redirect.from} redirect`, 'infos', 1) logger.DebugLog(
`Qmining module ${redirect.from} redirect`,
'infos',
1
)
let target = redirect.to let target = redirect.to
if (!redirect.to.includes('https://')) { if (!redirect.to.includes('https://')) {

View file

@ -3,7 +3,7 @@ const fs = require('fs')
const params = process.argv const params = process.argv
const file = params[2] const file = params[2]
const data = fs.readFileSync(file,'utf8').split('\n') const data = fs.readFileSync(file, 'utf8').split('\n')
console.log(data) console.log(data)
console.log("TODO: remove 'Q: ' and 'A: '") console.log("TODO: remove 'Q: ' and 'A: '")
@ -15,7 +15,7 @@ const res = data.reduce((acc, val) => {
if (formattedVal.startsWith('#')) return acc if (formattedVal.startsWith('#')) return acc
if (formattedVal.startsWith('Q')) { if (formattedVal.startsWith('Q')) {
currVal = { currVal = {
Q: formattedVal Q: formattedVal,
} }
return acc return acc
} }
@ -26,9 +26,9 @@ const res = data.reduce((acc, val) => {
{ {
...currVal, ...currVal,
data: { data: {
type: 'simple' type: 'simple',
} },
} },
] ]
} }

View file

@ -82,16 +82,22 @@ if (stat.isDirectory()) {
clearPossibleAnswers(pathA, db) clearPossibleAnswers(pathA, db)
log( log(
`Cleared possible questions from ${C('green')}${pathA}${C()} based on ${C( `Cleared possible questions from ${C(
'green' 'green'
)}${pathB}${C()} db` )}${pathA}${C()} based on ${C('green')}${pathB}${C()} db`
) )
} else { } else {
log( log(
`Removing possible question duplicates from ${C('green')}${pathA}${C()}` `Removing possible question duplicates from ${C(
'green'
)}${pathA}${C()}`
) )
removePossibleAnswersDuplicates(pathA) removePossibleAnswersDuplicates(pathA)
log(`Removed possible question duplicates from ${C('green')}${pathA}${C()}`) log(
`Removed possible question duplicates from ${C(
'green'
)}${pathA}${C()}`
)
} }
} else { } else {
console.time('load') console.time('load')
@ -309,9 +315,11 @@ function difference({ dbA, dbB }) {
hr() hr()
log( log(
`${C('blue')}${i + 1} / ${dbA.length}: ${C('green')}${subj.Name}, ${C( `${C('blue')}${i + 1} / ${dbA.length}: ${C('green')}${
'blue' subj.Name
)}${subj.Questions.length}${C('green')} questions${C()}` }, ${C('blue')}${subj.Questions.length}${C(
'green'
)} questions${C()}`
) )
printProgressBar(i + 1, dbA.length) printProgressBar(i + 1, dbA.length)

View file

@ -201,18 +201,20 @@ function processIncomingRequestUsingDb(
.then((results: Array<WorkerResult>) => { .then((results: Array<WorkerResult>) => {
const allQuestions: Question[] = [] // all new questions here that do not have result const allQuestions: Question[] = [] // all new questions here that do not have result
results.forEach((result: WorkerResult, i) => { results.forEach((result: WorkerResult, i) => {
const add = (result.result as SearchResultQuestion[]).every( const add = (
(res: SearchResultQuestion) => { result.result as SearchResultQuestion[]
).every((res: SearchResultQuestion) => {
return res.match < minMatchAmmountToAdd return res.match < minMatchAmmountToAdd
} })
)
if (add && !result.error) { if (add && !result.error) {
allQuestions.push(recievedQuestions[i]) allQuestions.push(recievedQuestions[i])
} }
}) })
try { try {
const subjName = getSubjNameWithoutYear(recievedData.subj) const subjName = getSubjNameWithoutYear(
recievedData.subj
)
if (allQuestions.length > 0) { if (allQuestions.length > 0) {
addQuestionsToDb(allQuestions, subjName, qdb) addQuestionsToDb(allQuestions, subjName, qdb)
@ -224,7 +226,11 @@ function processIncomingRequestUsingDb(
) )
if (currWrites >= writeAfter && !dryRun) { if (currWrites >= writeAfter && !dryRun) {
currWrites = 0 currWrites = 0
logger.DebugLog('Writing data.json', 'isadding', 1) logger.DebugLog(
'Writing data.json',
'isadding',
1
)
writeData(qdb.data, qdb.path) writeData(qdb.data, qdb.path)
} }
} }
@ -239,7 +245,11 @@ function processIncomingRequestUsingDb(
logger.DebugLog('New Questions:', 'isadding', 2) logger.DebugLog('New Questions:', 'isadding', 2)
logger.DebugLog(allQuestions, 'isadding', 2) logger.DebugLog(allQuestions, 'isadding', 2)
logger.DebugLog('ProcessIncomingRequest done', 'isadding', 1) logger.DebugLog(
'ProcessIncomingRequest done',
'isadding',
1
)
resolve({ resolve({
newQuestions: allQuestions, newQuestions: allQuestions,
subjName: recievedData.subj, subjName: recievedData.subj,
@ -254,7 +264,9 @@ function processIncomingRequestUsingDb(
logger.GetColor('redbg') logger.GetColor('redbg')
) )
reject( reject(
new Error('Error while processing processData worker result!') new Error(
'Error while processing processData worker result!'
)
) )
} }
}) })
@ -337,7 +349,8 @@ function runCleanWorker(
msgAllWorker({ msgAllWorker({
type: 'rmQuestions', type: 'rmQuestions',
data: { data: {
questionIndexesToRemove: questionIndexesToRemove as number[][], questionIndexesToRemove:
questionIndexesToRemove as number[][],
subjIndex: subjIndex, subjIndex: subjIndex,
qdbIndex: qdb.index, qdbIndex: qdb.index,
recievedQuestions: recievedQuesitons, recievedQuestions: recievedQuesitons,
@ -545,7 +558,10 @@ export function backupData(questionDbs: Array<QuestionDb>): void {
// logger.Log(`Backing up ${data.name}...`) // logger.Log(`Backing up ${data.name}...`)
writeData( writeData(
data.data, data.data,
`${path}${data.name}_${utils.GetDateString(undefined, true)}.json` `${path}${data.name}_${utils.GetDateString(
undefined,
true
)}.json`
) )
// logger.Log('Done') // logger.Log('Done')
} catch (err) { } catch (err) {

View file

@ -166,7 +166,9 @@ function compareString(
i++ i++
} }
let percent = Math.round(parseFloat(((match / s1a.length) * 100).toFixed(2))) let percent = Math.round(
parseFloat(((match / s1a.length) * 100).toFixed(2))
)
const lengthDifference = Math.abs(s2a.length - s1a.length) const lengthDifference = Math.abs(s2a.length - s1a.length)
percent -= lengthDifference * lengthDiffMultiplier percent -= lengthDifference * lengthDiffMultiplier
if (percent < 0) { if (percent < 0) {
@ -627,15 +629,20 @@ function setNoPossibleAnswersPenalties(
const updated = results.map((result) => { const updated = results.map((result) => {
const matchCount = Array.isArray(result.q.data.possibleAnswers) const matchCount = Array.isArray(result.q.data.possibleAnswers)
? result.q.data.possibleAnswers.filter((resultPossibleAnswer) => { ? result.q.data.possibleAnswers.filter((resultPossibleAnswer) => {
return questionPossibleAnswers.some((questionPossibleAnswer) => { return questionPossibleAnswers.some(
if (questionPossibleAnswer.val && resultPossibleAnswer.val) { (questionPossibleAnswer) => {
if (
questionPossibleAnswer.val &&
resultPossibleAnswer.val
) {
return questionPossibleAnswer.val.includes( return questionPossibleAnswer.val.includes(
resultPossibleAnswer.val resultPossibleAnswer.val
) )
} else { } else {
return false return false
} }
}) }
)
}).length }).length
: 0 : 0
@ -648,7 +655,9 @@ function setNoPossibleAnswersPenalties(
match: result.match - noPossibleAnswerMatchPenalty, match: result.match - noPossibleAnswerMatchPenalty,
detailedMatch: { detailedMatch: {
...result.detailedMatch, ...result.detailedMatch,
qMatch: result.detailedMatch.qMatch - noPossibleAnswerMatchPenalty, qMatch:
result.detailedMatch.qMatch -
noPossibleAnswerMatchPenalty,
}, },
} }
} }
@ -781,7 +790,8 @@ function handleWorkerData() {
// }done!` // }done!`
// ) // )
} else if (msg.type === 'dbEdit') { } else if (msg.type === 'dbEdit') {
const { dbIndex, edits }: { dbIndex: number; edits: Edits } = msg.data const { dbIndex, edits }: { dbIndex: number; edits: Edits } =
msg.data
const { resultDb } = editDb(qdbs[dbIndex], edits) const { resultDb } = editDb(qdbs[dbIndex], edits)
qdbs[dbIndex] = resultDb qdbs[dbIndex] = resultDb
logger.DebugLog(`Worker db edit ${workerIndex}`, 'worker update', 1) logger.DebugLog(`Worker db edit ${workerIndex}`, 'worker update', 1)
@ -811,7 +821,10 @@ function handleWorkerData() {
added = true added = true
return { return {
Name: subj.Name, Name: subj.Name,
Questions: [...subj.Questions, ...newQuestions], Questions: [
...subj.Questions,
...newQuestions,
],
} }
} else { } else {
return subj return subj
@ -841,7 +854,11 @@ function handleWorkerData() {
} }
}) })
} }
logger.DebugLog(`Worker new question ${workerIndex}`, 'worker update', 1) logger.DebugLog(
`Worker new question ${workerIndex}`,
'worker update',
1
)
parentPort.postMessage({ parentPort.postMessage({
msg: `From thread #${workerIndex}: update done`, msg: `From thread #${workerIndex}: update done`,
@ -930,7 +947,8 @@ export function cleanDb(
if ( if (
res > minMatchToNotSearchOtherSubjects && res > minMatchToNotSearchOtherSubjects &&
(!question.data.date || question.data.date < overwriteFromDate) (!question.data.date ||
question.data.date < overwriteFromDate)
) { ) {
return [...acc, i] return [...acc, i]
} }

View file

@ -108,7 +108,11 @@ function LogReq(
if (req.url.includes('lred')) { if (req.url.includes('lred')) {
dl += C('red') dl += C('red')
} }
if (req.session && req.session.user && !shouldLog(req.session.user.id, noLogIds)) { if (
req.session &&
req.session.user &&
!shouldLog(req.session.user.id, noLogIds)
) {
return return
} }
@ -189,21 +193,30 @@ function Load(): void {
try { try {
uvData = JSON.parse(utils.ReadFile(uStatsFile)) uvData = JSON.parse(utils.ReadFile(uStatsFile))
} catch (err) { } catch (err) {
Log('Error at loading logs! (@ first run its normal)', GetColor('redbg')) Log(
'Error at loading logs! (@ first run its normal)',
GetColor('redbg')
)
console.error(err) console.error(err)
} }
try { try {
udvData = JSON.parse(utils.ReadFile(uvStatsFile)) udvData = JSON.parse(utils.ReadFile(uvStatsFile))
} catch (err) { } catch (err) {
Log('Error at loading logs! (@ first run its normal)', GetColor('redbg')) Log(
'Error at loading logs! (@ first run its normal)',
GetColor('redbg')
)
console.error(err) console.error(err)
} }
try { try {
vData = utils.ReadJSON(statFile) vData = utils.ReadJSON(statFile)
} catch (err) { } catch (err) {
Log('Error at loading logs! (@ first run its normal)', GetColor('redbg')) Log(
'Error at loading logs! (@ first run its normal)',
GetColor('redbg')
)
console.error(err) console.error(err)
} }
@ -332,7 +345,10 @@ function Save() {
utils.WriteFile(JSON.stringify(dvData), vStatFile) utils.WriteFile(JSON.stringify(dvData), vStatFile)
// Log("Stats wrote."); // Log("Stats wrote.");
} catch (err) { } catch (err) {
Log('Error at writing visit logs! (more in stderr)', GetColor('redbg')) Log(
'Error at writing visit logs! (more in stderr)',
GetColor('redbg')
)
console.error(err) console.error(err)
} }
writes = 0 writes = 0

View file

@ -251,7 +251,10 @@ function uploadFile(
file.mv(fileDestination, (err: Error) => { file.mv(fileDestination, (err: Error) => {
if (err) { if (err) {
logger.Log(`Unable to upload file!`, logger.GetColor('redbg')) logger.Log(
`Unable to upload file!`,
logger.GetColor('redbg')
)
console.error(err) console.error(err)
reject(err) reject(err)
} else { } else {

View file

@ -35,7 +35,13 @@ interface WorkerObj {
} }
export interface TaskObject { export interface TaskObject {
type: 'work' | 'dbEdit' | 'newQuestions' | 'newdb' | 'dbClean' | 'rmQuestions' type:
| 'work'
| 'dbEdit'
| 'newQuestions'
| 'newdb'
| 'dbClean'
| 'rmQuestions'
data: data:
| { | {
searchIn: number[] searchIn: number[]

@ -1 +1 @@
Subproject commit 281d0e00ce054d46444f377876786b913b8c1a08 Subproject commit ed507dc39f5d34703e53585a75a0138e70bcee3a