@carrot-farm/mongsil-ui
Version:
react ui library
51 lines (50 loc) • 2.36 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var React = __importStar(require("react"));
var Input_1 = __importDefault(require("../../Input"));
var Dialog_1 = __importDefault(require("../Dialog"));
function Prompt(_a) {
var title = _a.title, body = _a.body, visible = _a.visible, onOk = _a.onOk, _b = _a.onClose, onClose = _b === void 0 ? function () { } : _b;
var ref = React.useRef(null);
var _c = React.useState(''), value = _c[0], setValue = _c[1];
var handleOk = function () {
if (typeof onOk === 'function') {
onOk(value);
}
};
var handleInputChange = function (value) {
setValue(value);
};
React.useEffect(function () {
var _a;
if (visible === true && ref.current) {
(_a = ref.current.querySelector('input')) === null || _a === void 0 ? void 0 : _a.focus();
}
}, [visible]);
return (React.createElement(Dialog_1.default, { title: title, body: React.createElement("div", null,
React.createElement("p", null, body),
React.createElement(Input_1.default, { ref: ref, onChange: function (v) { return handleInputChange(v !== null && v !== void 0 ? v : ''); } })), visible: visible, onOk: handleOk, onCancel: onClose, onClose: onClose, onBackdropClick: onClose }));
}
exports.default = Prompt;