mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-18 01:36:08 +08:00
12 lines
493 B
TypeScript
12 lines
493 B
TypeScript
import type { HandlerCommon } from './server';
|
|
|
|
export default function serializer(ignoreSerializeFunction = false, h?: HandlerCommon) {
|
|
return (k: string, v: any) => {
|
|
if (k.startsWith('_') && k !== '_id') return undefined;
|
|
if (typeof v === 'bigint') return `BigInt::${v.toString()}`;
|
|
if (!ignoreSerializeFunction && v && typeof v === 'object'
|
|
&& 'serialize' in v && typeof v.serialize === 'function') return v.serialize(h);
|
|
return v;
|
|
};
|
|
}
|