UNPKG

s2s

Version:
85 lines (64 loc) 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.toErrorStack = toErrorStack; exports.getOutputPath = getOutputPath; exports.writeFileSync = writeFileSync; exports.relativeFromCwd = relativeFromCwd; exports.getDirAndBaseName = getDirAndBaseName; exports.isAlreadyExist = isAlreadyExist; exports.resolveInputPath = resolveInputPath; var _path = _interopRequireDefault(require("path")); var _fs = _interopRequireDefault(require("fs")); var _slash = _interopRequireDefault(require("slash")); var _normalizePathSep = _interopRequireDefault(require("normalize-path-sep")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // eslint-disable-next-line flowtype/no-weak-types function toErrorStack(err) { if (err._babel && err instanceof SyntaxError) { return `${err.name}: ${err.message}\n${err.codeFrame}`; } return err.stack; } function getOutputPath(output, input) { if (_path.default.isAbsolute(output)) { return output; } const inputPath = _path.default.extname(input) === '' ? (0, _normalizePathSep.default)(input) : _path.default.dirname((0, _normalizePathSep.default)(input)); return (0, _slash.default)(_path.default.join(inputPath, (0, _normalizePathSep.default)(output))); } function writeFileSync(outputPath, code) { _fs.default.writeFileSync(outputPath, code, 'utf-8'); } function relativeFromCwd(input) { return (0, _slash.default)(_path.default.relative(process.cwd(), input)); } function getDirAndBaseName(testPath) { const dirname = _path.default.dirname(testPath); const basename = _path.default.basename(testPath); return { dirname, basename }; } function isAlreadyExist(input) { try { const code = _fs.default.readFileSync(input, 'utf-8'); if (code.length === 0 || code.trim() === '') { return false; } return true; } catch (error) { return false; } } function resolveInputPath(input, eventPath) { if (!input) { return eventPath; } if (_path.default.isAbsolute(input)) { return input; } return _path.default.resolve(_path.default.dirname(eventPath), input); }