@sparklink-pro/apant
Version:
Apollo & Antd tools
25 lines • 958 B
JavaScript
import { __rest } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import { useCallback, useEffect } from 'react';
import { Input } from 'antd';
import { useIMask } from 'react-imask';
export function InputMasked(_a) {
var { onChange, mask } = _a, props = __rest(_a, ["onChange", "mask"]);
const { ref, value, typedValue, setTypedValue } = useIMask(mask);
useEffect(() => {
// @ts-ignore
if (props.value) {
setTypedValue(props.value);
}
}, []);
useEffect(() => {
onChange === null || onChange === void 0 ? void 0 : onChange({ target: { value: typedValue } });
}, [typedValue]);
const updateRef = useCallback((a) => {
ref.current = a === null || a === void 0 ? void 0 : a.input;
}, [ref]);
// @ts-ignore
return _jsx(Input, Object.assign({ ref: updateRef }, props, { value: value }));
}
export default InputMasked;
//# sourceMappingURL=InputMasked.js.map