UNPKG

wp-setup

Version:

Easily create replicable local WordPress environments with Docker

37 lines 1.79 kB
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import crypto from 'crypto'; import readline from 'node:readline'; import { exit, stdin, stdout } from 'node:process'; import { promisify } from 'node:util'; // Use promisify to keep node 16 compatibility const rl = readline.createInterface(stdin, stdout); const question = promisify(rl.question).bind(rl); export const getProjectName = (prefixed = true) => { var _a; const hash = crypto.createHash('md5').update(process.cwd()).digest('hex').slice(0, 6); const name = (_a = process.cwd().split('/').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase().replace(/[^a-z0-9]/gi, '-'); if (!name) { throw new Error('Invalid project name'); } return prefixed ? `${hash}-${name}` : name; }; export const confirm = (prompt_1, ...args_1) => __awaiter(void 0, [prompt_1, ...args_1], void 0, function* (prompt, shouldReturn = false) { const answer = yield question(`${prompt} (y/n) `); rl.close(); if (answer.toLowerCase() !== 'y') { if (shouldReturn) { return false; } exit(0); } return true; }); //# sourceMappingURL=cli.js.map