oneframe-react
Version:
Oneframe React ## Components, Hooks, Helper Functions & State Management
26 lines (25 loc) • 1.7 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const lodash_1 = require("lodash");
const react_number_format_1 = __importDefault(require("react-number-format"));
const prop_types_1 = __importDefault(require("prop-types"));
const NumberFormatComponent = (props) => {
const { value, prefix, suffix, thousandSeparator, decimalSeparator, decimalScale, fixedDecimalScale, allowNegative, format, } = props;
return (react_1.default.createElement(react_number_format_1.default, { value: value, displayType: 'text', decimalSeparator: decimalSeparator, decimalScale: decimalScale, fixedDecimalScale: fixedDecimalScale, thousandSeparator: thousandSeparator, allowNegative: allowNegative, prefix: prefix, suffix: suffix, renderText: value => react_1.default.createElement(react_1.default.Fragment, null, value), className: `oneframe-number-format`, format: format }));
};
NumberFormatComponent.propTypes = {
value: prop_types_1.default.number.isRequired,
prefix: prop_types_1.default.string,
suffix: prop_types_1.default.string,
thousandSeparator: prop_types_1.default.oneOfType([prop_types_1.default.bool]),
decimalSeparator: prop_types_1.default.oneOf([',', '.']),
decimalScale: prop_types_1.default.number,
fixedDecimalScale: prop_types_1.default.bool,
allowNegative: prop_types_1.default.bool,
};
exports.NumberFormatTmp = NumberFormatComponent;
exports.default = react_1.default.memo(NumberFormatComponent, (p, n) => lodash_1.isEqual(p, n));