diff --git a/packages/hydrooj/src/service/decorators.ts b/packages/hydrooj/src/service/decorators.ts index 025486ea..7f9cd7a4 100644 --- a/packages/hydrooj/src/service/decorators.ts +++ b/packages/hydrooj/src/service/decorators.ts @@ -124,10 +124,10 @@ export const Types: Types = { }, null], NumericArray: [(v) => { if (v instanceof Array) return v.map(Number); - return v ? [Number(v)] : []; + return v.split(',').map(Number); }, (v) => { - if (v instanceof Array) return !v.map(Number).includes(NaN); - return !Number.isNaN(+v); + if (v instanceof Array) return v.map(Number).every(Number.isSafeInteger); + return v.split(',').map(Number).every(Number.isSafeInteger); }], CommaSeperatedArray: [ (v) => v.toString().replace(/,/g, ',').split(',').map((e) => e.trim()).filter((i) => i),