Users now pick a window length + "how long it should actually take" and the form derives time_scale (window ÷ target), showing 倍速 ×N and 加速后耗时 read-only; a 实时 switch pins real wall-clock (×1). Validation blocks a target longer than the window. List/detail display accelerated duration instead of raw ×N. POST /campaigns contract unchanged. (v0.6 ticket 07) |
||
|---|---|---|
| .. | ||
| src | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||