osr-mono/packages/osr-mail/_cli.js
2025-01-29 18:17:03 +01:00

74 lines
6.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.sanitize = exports.defaults = void 0;
const osr_commons_1 = require("@plastichub/osr-commons");
const osr_commons_2 = require("@plastichub/osr-commons");
const exists_1 = require("@plastichub/fs/exists");
const _1 = require("./");
const globBase = require('glob-base');
const defaults = () => {
const DefaultCommand = 'info';
if (process.argv.length === 2) {
process.argv.push(DefaultCommand);
}
process.on('unhandledRejection', (reason) => {
console.error('Unhandled rejection, reason: ', reason);
});
};
exports.defaults = defaults;
const sanitize = (argv) => {
const options = {
src: argv.src,
dry: argv.dry,
alt: argv.alt,
logLevel: argv.logLevel,
transport: argv.transport,
...argv
};
let srcInfo;
let variables = {
...options.variables
};
if (options.src) {
const srcIn = (0, osr_commons_2.resolve)(options.src, options.alt, variables);
options.src = (0, osr_commons_1.forward_slash)((0, _1.substitute)(options.alt, srcIn, variables));
// in case a file with a glob pattern is provided, strip the glob
// this is a special case, enabling shared scripts in Alt-Tap Salamand
const glob_base = globBase(options.src);
const file = options.src.replace(glob_base.glob, '').replace(/\/$/, '');
if ((0, exists_1.sync)(file) && (0, osr_commons_2.isFile)(file)) {
options.src = file;
}
srcInfo = (0, osr_commons_1.pathInfo)((0, osr_commons_2.resolve)(options.src, options.alt, variables));
if (srcInfo && srcInfo.FILES && srcInfo.FILES.length) {
options.srcInfo = srcInfo;
for (const key in srcInfo) {
if (Object.prototype.hasOwnProperty.call(srcInfo, key)) {
variables['SRC_' + key] = srcInfo[key];
}
}
}
else {
options.src = (0, osr_commons_2.resolve)(options.src, options.alt, variables);
}
}
const out = (0, osr_commons_2.resolve)(options.dst || "", options.alt, variables);
options.dstInfo = (0, osr_commons_1.pathInfo)(out);
if (options.dst) {
if (options.srcInfo && options.dstInfo) {
options.dstInfo.PATH = options.dst;
for (const key in options.dstInfo) {
if (Object.prototype.hasOwnProperty.call(options.dstInfo, key)) {
variables['DST_' + key] = options.dstInfo[key];
}
}
}
else {
options.dst = (0, osr_commons_2.resolve)(options.dst || '', options.alt, variables);
}
}
options.variables = variables;
return options;
};
exports.sanitize = sanitize;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2NsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNyYy9fY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlEQUFpRTtBQUNqRSx5REFBeUQ7QUFDekQsa0RBQXNEO0FBRXRELHlCQUErQjtBQUUvQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFFOUIsTUFBTSxRQUFRLEdBQUcsR0FBRyxFQUFFO0lBQ3pCLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQztJQUM5QixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLENBQUMsTUFBYyxFQUFFLEVBQUU7UUFDaEQsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUMxRCxDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQTtBQVJZLFFBQUEsUUFBUSxZQVFwQjtBQUVNLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBUyxFQUFzQixFQUFFO0lBRXRELE1BQU0sT0FBTyxHQUFhO1FBQ3RCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztRQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztRQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztRQUNiLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtRQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7UUFDekIsR0FBRyxJQUFJO0tBQ0UsQ0FBQTtJQUViLElBQUksT0FBTyxDQUFBO0lBRVgsSUFBSSxTQUFTLEdBQUc7UUFDWixHQUFHLE9BQU8sQ0FBQyxTQUFTO0tBQ3ZCLENBQUE7SUFFRCxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNkLE1B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