@convo-lang/convo-lang-cli
Version:
The language of AI
35 lines • 1.26 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createConvoExec = void 0;
const convo_lang_1 = require("@convo-lang/convo-lang");
const node_common_1 = require("@iyio/node-common");
const createConvoExec = (confirm) => {
return (0, convo_lang_1.createConvoScopeFunction)(async (scope, exe) => {
if (!scope.paramValues?.length) {
return '';
}
const out = [];
for (let i = 0; i < scope.paramValues.length; i++) {
const cmd = scope.paramValues[i];
if (typeof cmd !== 'string') {
continue;
}
const allow = await confirm(cmd, i);
if (!allow) {
out.push('Access denied');
break;
}
const cwd = exe.getVarEx(convo_lang_1.convoVars.__cwd, undefined, scope, false);
const r = await (0, node_common_1.execAsync)({
cmd,
cwd: (typeof cwd === 'string') ? cwd : undefined,
silent: true,
ignoreErrors: true,
});
out.push(r);
}
return out.join('\n');
});
};
exports.createConvoExec = createConvoExec;
//# sourceMappingURL=convo-exec.js.map