@etherspot/modular-sdk
Version:
Etherspot Modular SDK - build with ERC-7579 smart accounts modules
25 lines • 857 B
JavaScript
import { Transform, TransformationType } from 'class-transformer';
import { isBigNumber } from '../utils/index.js';
import { BigNumber } from '../../types/bignumber.js';
/**
* @ignore
*/
export function TransformBigNumber() {
return Transform((params) => {
const { type, value } = params;
let result = null;
switch (type) {
case TransformationType.PLAIN_TO_CLASS:
result = value ? BigNumber.from(value) : null;
break;
case TransformationType.CLASS_TO_CLASS:
result = value;
break;
case TransformationType.CLASS_TO_PLAIN:
result = isBigNumber(value) ? BigNumber.from(value).toHexString() : '0x00';
break;
}
return result;
});
}
//# sourceMappingURL=transform-big-number.js.map