UNPKG

@dotconnor/grommet

Version:

focus on the essential experience

77 lines (67 loc) 1.99 kB
"use strict"; exports.__esModule = true; exports.CustomBoxMaskedInput = void 0; var _react = _interopRequireDefault(require("react")); var _grommet = require("grommet"); var _themes = require("grommet/themes"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var CustomBoxMaskedInput = function CustomBoxMaskedInput() { var _React$useState = _react["default"].useState(''), value = _React$useState[0], setValue = _React$useState[1]; var _React$useState2 = _react["default"].useState(), box = _React$useState2[0], setBox = _React$useState2[1]; var boxRef = _react["default"].useCallback(setBox, []); return /*#__PURE__*/_react["default"].createElement(_grommet.Grommet, { full: true, theme: _themes.grommet }, /*#__PURE__*/_react["default"].createElement(_grommet.Box, { direction: "row", align: "center", pad: { horizontal: 'xsmall' }, border: "all", ref: boxRef, wrap: true }, /*#__PURE__*/_react["default"].createElement("span", { role: "img", "aria-label": "Disk size" }, "\uD83D\uDCBE"), /*#__PURE__*/_react["default"].createElement(_grommet.Box, { flex: true, width: "medium", gap: "medium" }, /*#__PURE__*/_react["default"].createElement(_grommet.MaskedInput, { plain: true, dropProps: { target: box }, mask: [{ length: [1, 4], options: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024], regexp: /^\d{1,4}$/, placeholder: 'nnn' }, { fixed: ' ' }, { length: 2, options: ['MB', 'GB', 'TB'], regexp: /^[mgt]b$|^[MGT]B$|^[mMgGtT]$/, placeholder: 'gb' }], value: value, onChange: function onChange(event) { return setValue(event.target.value); } })))); }; exports.CustomBoxMaskedInput = CustomBoxMaskedInput; CustomBoxMaskedInput.story = { name: 'Custom box', parameters: { chromatic: { disable: true } } };