UNPKG

@react-form-fields/core

Version:

Material UI Form Fields

23 lines 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var context_1 = require("../ConfigProvider/context"); var useMask = function (_a) { var mask = _a.mask, value = _a.value; var configContext = React.useContext(context_1.default); if (!configContext) throw new Error('You must provide a valid FieldValidationConfigContext'); var _b = React.useMemo(function () { var maskFunc = (configContext.masks || []).find(function (m) { return m.name === mask; }); if (!maskFunc) { maskFunc = { name: 'not-found', apply: function (v) { return v; }, clean: function (v) { return v; } }; mask && console.warn("@react-form-fields/core: Mask '" + mask + "' not found"); } return maskFunc; }, [mask]), maskApply = _b.apply, maskClean = _b.clean; var maskedValue = React.useMemo(function () { return maskApply ? maskApply(value) : value; }, [value, maskApply]); var cleanedValue = React.useMemo(function () { return maskClean ? maskClean(value) : value; }, [value, maskClean]); return { maskApply: maskApply, maskClean: maskClean, maskedValue: maskedValue, cleanedValue: cleanedValue }; }; exports.default = useMask; //# sourceMappingURL=useMask.js.map