146 lines
13 KiB
JavaScript
146 lines
13 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.sanitizeVideo = 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 images_1 = require("./lib/media/images");
|
|
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,
|
|
dst: argv.dst,
|
|
debug: argv.debug,
|
|
dry: argv.dry,
|
|
alt: argv.alt,
|
|
percent: argv.percent,
|
|
width: argv.width === false ? undefined : argv.width,
|
|
height: argv.height === false ? undefined : argv.height,
|
|
minWidth: argv.minWidth === false ? undefined : argv.minWidth,
|
|
minHeight: argv.minHeight === false ? undefined : argv.minHeight,
|
|
minSize: argv.minSize === false ? undefined : argv.minSize,
|
|
fit: argv.fit,
|
|
position: argv.position,
|
|
logLevel: argv.logLevel,
|
|
withoutEnlargement: argv.withoutEnlargement,
|
|
withoutReduction: argv.withoutReduction,
|
|
fastShrinkOnLoad: argv.fastShrinkOnLoad,
|
|
background: argv.background,
|
|
...argv
|
|
};
|
|
let srcInfo;
|
|
let variables = {
|
|
IMAGES: images_1.GLOB_BASIC,
|
|
...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);
|
|
}
|
|
}
|
|
options.dstInfo = (0, osr_commons_1.pathInfoEx)(options.dst || "");
|
|
if (options.dstInfo && 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;
|
|
const sanitizeVideo = (argv) => {
|
|
const options = {
|
|
src: argv.src,
|
|
dst: argv.dst,
|
|
dry: argv.dry,
|
|
alt: argv.alt,
|
|
verb: argv.verb,
|
|
audio: argv.audio,
|
|
percent: argv.percent,
|
|
logLevel: argv.logLevel,
|
|
...argv
|
|
};
|
|
let srcInfo;
|
|
let variables = {
|
|
IMAGES: images_1.GLOB_BASIC,
|
|
...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);
|
|
}
|
|
}
|
|
options.dstInfo = (0, osr_commons_1.pathInfoEx)(options.dst || "");
|
|
if (options.dstInfo && 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.sanitizeVideo = sanitizeVideo;
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2NsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNyYy9fY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlEQUE2RTtBQUM3RSx5REFBeUQ7QUFDekQsa0RBQXNEO0FBQ3RELCtDQUErQztBQUMvQyx5QkFBK0I7QUFFL0IsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBRTlCLE1BQU0sUUFBUSxHQUFHLEdBQUcsRUFBRTtJQUN6QixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUM7SUFDOUIsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDckM7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLENBQUMsTUFBYyxFQUFFLEVBQUU7UUFDaEQsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUMxRCxDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQTtBQVJZLFFBQUEsUUFBUSxZQVFwQjtBQUVNLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBUyxFQUFtQixFQUFFO0lBRW5ELE1BQU0sT0FBTyxHQUFtQjtRQUM1QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7UUFDYixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7UUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1FBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1FBQ2IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSztRQUNwRCxNQUFNLEVBQUUsSUFB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
|