better code
Massimo Melina committed
Jun 25, 2024 at 15:46 UTC
1fce87e0d73280b023f94dd15c69f5fa3ee03e3f
4 files changed
+5
-6
src/api.monitor.ts
+2
-2
@@ -69,9 +69,9 @@ export default {
69
agent: shortenAgent(ctx.get('user-agent')),
70
archive: s.archive,
71
...s.browsing ? { op: 'browsing', path: decodeURIComponent(s.browsing) }
72
- : s.uploadPath ? { op: 'upload',path: decodeURIComponent(s.uploadPath) }
72
+ : s.uploadPath ? { op: 'upload', path: decodeURIComponent(s.uploadPath) }
73
: {
74
- op: !s.considerAsGui && s.op || undefined,
74
+ op: !s.considerAsGui && (ctx.state.archive || ctx.state.vfsNode) ? 'download' : undefined,
75
path: try_(() => decodeURIComponent(ctx.originalUrl), () => ctx.originalUrl),
76
},
77
opProgress: _.isNumber(s.opProgress) ? _.round(s.opProgress, 3) : undefined,
src/log.ts
+1
-1
@@ -119,7 +119,7 @@ export const logMw: Koa.Middleware = async (ctx, next) => {
119
const length = ctx.state.length ?? ctx.length
120
const uri = ctx.originalUrl
121
ctx.logExtra(ctx.state.includesLastByte && ctx.vfsNode && ctx.res.finished && { dl: 1 }
122
- || ctx.state.op === 'upload' && { size: ctx.state.opTotal, ul: ctx.state.uploads })
122
+ || ctx.state.uploadPath && { size: ctx.state.opTotal, ul: ctx.state.uploads })
123
if (conn?.country)
124
ctx.logExtra({ country: conn.country })
125
if (logUA.get())
src/serveFile.ts
+1
-2
@@ -89,7 +89,7 @@ export async function serveFile(ctx: Koa.Context, source:string, mime?:string, c
89
const { size } = stats
90
const range = applyRange(ctx, size)
91
ctx.body = createReadStream(source, range)
92
- if (ctx.vfsNode)
92
+ if (ctx.state.vfsNode)
93
monitorAsDownload(ctx, size, range?.start)
94
}
95
catch (e: any) {
@@ -104,7 +104,6 @@ export function monitorAsDownload(ctx: Koa.Context, size?: number, offset?: numb
104
ctx.body.on('end', () =>
105
updateConnection(conn, {}, { opProgress: 1 }) )
106
updateConnection(conn, {}, {
107
- op: 'download',
107
opProgress: 0,
108
opTotal: size,
109
opOffset: size && offset && (offset / size),
src/upload.ts
+1
-1
@@ -183,7 +183,7 @@ export function uploadWriter(base: VfsNode, path: string, ctx: Koa.Context) {
183
let lastGot = 0
184
let lastGotTime = 0
185
const opTotal = reqSize + resume
186
- Object.assign(ctx.state, { op: 'upload', opTotal, opOffset: resume / opTotal, opProgress: 0 })
186
+ Object.assign(ctx.state, { opTotal, opOffset: resume / opTotal, opProgress: 0 })
187
const conn = updateConnectionForCtx(ctx)
188
if (!conn) return
189
const h = setInterval(() => {