UNPKG

webstorm-init

Version:

CLI tool to write initial WebStorm settings into a new project

48 lines 2.07 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Confirm = void 0; const react_1 = __importDefault(require("react")); const ink_1 = require("ink"); const ink_spinner_1 = __importDefault(require("ink-spinner")); const Error_1 = require("./Error"); exports.Confirm = ({ confirm, idea, onConfirm, scriptName, }) => { const [showHint, setShowHint] = react_1.default.useState(!confirm); const { exit } = ink_1.useApp(); if (confirm) { ink_1.useInput((input) => { if (input.toLowerCase() === "y") { onConfirm(); } else { setShowHint(true); // to remove the prompt exit(); } }); } const Confirm = () => (react_1.default.createElement(ink_1.Text, null, "Do you really want to overwrite the existing folder? [y/n]", " ", react_1.default.createElement(ink_spinner_1.default, { type: "noise" }))); const Hint = () => (react_1.default.createElement(ink_1.Text, null, "Use ", react_1.default.createElement(ink_1.Text, { inverse: true }, " ", scriptName, " --force "), " to overwrite existing settings.")); return (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement(Error_1.Error, null, react_1.default.createElement(ink_1.Text, { italic: true, inverse: true }, " ", idea, " "), " ", "folder already exists in project ", process.cwd()), react_1.default.createElement(ink_1.Spacer, null), react_1.default.createElement(ink_1.Box, null, showHint ? react_1.default.createElement(Hint, null) : react_1.default.createElement(Confirm, null)))); }; //# sourceMappingURL=Confirm.js.map